def test_spatna_hodnota_do_cile(): hra = udelej_vzorovou_hru() hra[1][0].append((1, 'Pi', True)) hra[2][0].append((3, 'Pi', True)) with pytest.raises(ValueError): # 'Do cíle musíš skládat karty postupně od nejnižších!' klondike.priprav_tah(hra, (0, 1, 7))
def test_spatna_barva_do_cile(): hra = udelej_vzorovou_hru() hra[1][0].append((1, 'Pi', True)) hra[2][0].append((2, 'Kr', True)) with pytest.raises(ValueError): # 'Cílová hromádka musí mít jednu barvu!' klondike.priprav_tah(hra, (0, 1, 7))
import klondike import random random.seed(0) hra = klondike.udelej_hru() klondike.vypis_hru(hra) while not klondike.hrac_vyhral(hra): tah = klondike.nacti_tah() try: info = klondike.priprav_tah(hra, tah) except ValueError as e: print(e) else: klondike.udelej_tah(hra, info) klondike.vypis_hru(hra)
import klondike import random; random.seed(0) hra = klondike.udelej_hru() klondike.vypis_hru(hra) while not klondike.hrac_vyhral(hra): tah = klondike.nacti_tah() try: info = klondike.priprav_tah(hra, tah) except ValueError as e: print(e) else: klondike.udelej_tah(hra, info) klondike.vypis_hru(hra)
def test_sedma_na_prazdny_sloupecek(): hra = udelej_vzorovou_hru() hra[2][0].clear() with pytest.raises(ValueError): # 'Do prázdného sloupečku smí jen král!' klondike.priprav_tah(hra, (1, 1, 0))
def test_presun_rubem_nahoru(): hra = udelej_vzorovou_hru() hra[2][1][:] = [(6, 'Sr', False), (5, 'Pi', True)] with pytest.raises(ValueError): # 'Nemůžeš přesouvat karty, které jsou rubem nahoru!' klondike.priprav_tah(hra, (1, 2, 0))
def test_neni_dost_karet_v_b(): hra = udelej_vzorovou_hru() hra[2][1][:] = [(6, 'Sr', True), (5, 'Pi', True)] with pytest.raises(ValueError): # 'Na to není v B dost karet!' klondike.priprav_tah(hra, (1, 4, 0))
def test_neni_dost_karet_ve_v(): hra = udelej_vzorovou_hru() with pytest.raises(ValueError): # 'Na to není v V dost karet!' klondike.priprav_tah(hra, (7, 2, 0))
def test_vic_karet_z_v(): hra = udelej_vzorovou_hru() hra[0][1].extend([(6, 'Sr', True), (5, 'Pi', True)]) with pytest.raises(ValueError): # Z balíčku V se nedá brát víc karet najednou!' klondike.priprav_tah(hra, (7, 2, 0))
def test_dvojka_do_prazdneho_cile(): hra = udelej_vzorovou_hru() hra[2][0][:] = [(1, 'Pi', True), (2, 'Pi', True)] with pytest.raises(ValueError): # 'Do cíle se nedá dávat víc karet najednou!' klondike.priprav_tah(hra, (0, 1, 7))