def test_vyhodnot_bez_vyhry(): vysledek = vyhodnot("--------------------", "x") vysledek = vyhodnot("---------o----------", "x") vysledek = vyhodnot("--o---x---o---o-----", "x") vysledek = vyhodnot("--o---xx--o---oo----", "o") vysledek = vyhodnot("-xooxoxoxxoxxooxoxox", "o") assert vysledek == "-"
def test_vyhodnot_remiza(): """ Nastala remíza pole 10. """ assert vyhodnot("oxoxoxoxox") == "!" assert vyhodnot("xxooxxooxo") == "!" assert vyhodnot("ooxxooxxoo") == "!"
def piskvorky1D(): pole = "-" * 20 # kdo ma jaky znak 0:PC-x a hrac-o, 1:PC-o a hrac-x if randrange(0, 2): znakPC = "x" znakHrac = "o" else: znakPC = "o" znakHrac = "x" print("Hrac ma", znakHrac) while True: pole = tah_pocitace(pole, znakPC) print(pole) if "-" != vyhodnot(pole, znakHrac, znakPC): # j*z neni volne pole break pole = tah_hrace(pole, znakHrac) print(pole) if "-" != vyhodnot(pole, znakHrac, znakPC): # j*z neni volne pole break if "o" == vyhodnot(pole, znakHrac, znakPC): print("Vyhral hrac s kolecky") elif "x" == vyhodnot(pole, znakHrac, znakPC): print("Vyhral hrac s krizky") else: print("Remiza")
def test_vyhodnot_pole(): ''' Test funkce vyhodnot: test různých situací a kontrola, že funkce vrátí správný symbol: 'x' --> Výhra - v poli je "xxx" 'o' --> Výhra - v poli je "ooo" '!' --> Remíza, hrací pole plné = není tam "-", nikdo nevyhrál '-' --> Nikdo zatím nevyhrál a v poli jsou zatím volná pole, tj. tam alespoň jednou "-" ''' situace_x = [ '---xxx---', 'xx-xx-xxx', 'xxx------', 'jklionxxx', 'xoxoxxxoo', '......xxx', '123456xxx', 'xxx', ' xxx' ] situace_o = [ '---ooo---', 'oo-oo-ooo', 'ooo------', 'jklixnooo', 'oxoxoooxx', '______ooo', '654321ooo', 'ooo', ' ooo' ] situace_remiza = [ 'oxoxoxoxo', 'ooxxooxxo', '.........', 'abcdefghijkl', 'XXXPPPOOO', 'x', 'o', ' ' ] situace_hra_pokracuje = [ '---------', 'xx-x-o-oo-', 'xoxoxoxox-', 'XXX------', '------OOO', '-', ' -', 'xXx------', 'o0o---oOo' ] for pole in situace_x: assert piskvorky.vyhodnot(pole) == 'x' for pole in situace_o: assert piskvorky.vyhodnot(pole) == 'o' for pole in situace_remiza: assert piskvorky.vyhodnot(pole) == '!' for pole in situace_hra_pokracuje: assert piskvorky.vyhodnot(pole) == '-'
def test_vyhodnot_remiza(): """ Nastala remíza. """ assert piskvorky.vyhodnot("oxoxoxoxoxoxoxoxoxox") == "!" assert piskvorky.vyhodnot("xxooxxooxxooxxooxxoo") == "!" assert piskvorky.vyhodnot("xoxoxoxoxoxoxoxoxoxo") == "!" assert piskvorky.vyhodnot("ooxxooxxooxxooxxooxx") == "!"
def test_vyhodnot_remiza(): """ Nastala remíza. """ assert vyhodnot("oxoxoxoxoxoxoxoxoxox") == "!" assert vyhodnot("xxooxxooxxooxxooxxoo") == "!" assert vyhodnot("ooxxooxxooxxooxxooxx") == "!" #dopsaný test assert vyhodnot("xoxoxoxoxoxoxoxoxoxo") == "!" #dopsaný test assert vyhodnot("abcd") == "!" #dopsaný test
def test_vyhodnot_hra(): """ Hra neskončila. """ assert vyhodnot("--------------------", "x", "o") == "-" assert vyhodnot("xx----------------oo", "x", "o") == "-" assert vyhodnot("-xoxoxoxoxoxoxoxoxox", "x", "o") == "-" assert vyhodnot("-xooxxooxxooxxooxxoo", "x", "o") == "-" assert vyhodnot("xoxoxoxoxoxoxoxoxox-", "x", "o") == "-" assert vyhodnot("xooxxooxxooxxooxxoo-", "x", "o") == "-" assert vyhodnot("oxoxoxoxo-oxoxoxoxox", "x", "o") == "-" assert vyhodnot("xxooxxoox-ooxxooxxoo", "x", "o") == "-" assert vyhodnot("xo------xox-------ox", "x", "o") == "-" assert vyhodnot("ox------oxo-------xo", "x", "o") == "-"
def test_vyhodnot_hra(): """ Hra neskončila. """ assert piskvorky.vyhodnot("--------------------") == "-" assert piskvorky.vyhodnot("xx----------------oo") == "-" assert piskvorky.vyhodnot("-xoxoxoxoxoxoxoxoxox") == "-" assert piskvorky.vyhodnot("-xooxxooxxooxxooxxoo") == "-" assert piskvorky.vyhodnot("xoxoxoxoxoxoxoxoxox-") == "-" assert piskvorky.vyhodnot("xooxxooxxooxxooxxoo-") == "-" assert piskvorky.vyhodnot("oxoxoxoxo-oxoxoxoxox") == "-" assert piskvorky.vyhodnot("xxooxxoox-ooxxooxxoo") == "-" assert piskvorky.vyhodnot("xxoo------------xxoo") == "-" assert piskvorky.vyhodnot("oo----------------xx") == "-"
def test_vyhodnot_hra(): """ Hra neskončila. """ assert vyhodnot("--------------------") == "-" assert vyhodnot("xx----------------oo") == "-" assert vyhodnot("-xoxoxoxoxoxoxoxoxox") == "-" assert vyhodnot("-xooxxooxxooxxooxxoo") == "-" assert vyhodnot("xoxoxoxoxoxoxoxoxox-") == "-" assert vyhodnot("xooxxooxxooxxooxxoo-") == "-" assert vyhodnot("oxoxoxoxo-oxoxoxoxox") == "-" assert vyhodnot("xxooxxoox-ooxxooxxoo") == "-" assert vyhodnot("----xxoox-ooxxooxxoo") == "-" #dopsaný test assert vyhodnot("xxooxxoox-ooxx------") == "-" #dopsaný test
def test_vyhodnot_hra(): """ Hra neskončila pole 10. """ assert vyhodnot("----------") == "-" assert vyhodnot("xx------oo") == "-" assert vyhodnot("-xoxoxoxox") == "-" assert vyhodnot("-oxxooxxoo") == "-" assert vyhodnot("xoxoxoxox-") == "-" assert vyhodnot("xxooxxoox-") == "-" assert vyhodnot("oxoxo-oxox") == "-" assert vyhodnot("xxoox-ooxo") == "-" assert vyhodnot("--oo--xx--") == "-"
def test_vyhodnot_vyhra_x(): """ Křížky vyhrály. """ assert vyhodnot("xxx-----------------") == "x" assert vyhodnot("--------xxx---------") == "x" assert vyhodnot("-----------------xxx") == "x" assert vyhodnot("-xoxoxxxoxoxoxoxoxox") == "x" assert vyhodnot("-xooxxooxxooxxoxxxoo") == "x" assert vyhodnot("xxxoxoxoxoxoxoxoxox-") == "x" assert vyhodnot("oxxxoxoxxooxxooxxoo-") == "x" assert vyhodnot("oxoxoxoxo-oxoxoxoxxx") == "x" assert vyhodnot("xxooxxoox-ooxxooxxxo") == "x"
def test_vyhodnot_vyhra_o(): """ Kolečka vyhrála. """ assert vyhodnot("ooo-----------------") == "o" assert vyhodnot("--------ooo---------") == "o" assert vyhodnot("-----------------ooo") == "o" assert vyhodnot("-xoxoxoxoooxoxoxoxox") == "o" assert vyhodnot("-xoooxooxxooxxooxxoo") == "o" assert vyhodnot("xoooxoxoxoxoxoxoxox-") == "o" assert vyhodnot("oooxxooxxooxxooxxoo-") == "o" assert vyhodnot("oxoxoxoxo-oxoxoxooox") == "o" assert vyhodnot("xxooxxoox-ooxxooxooo") == "o"
def test_vyhodnot_remiza(): """ Nastala remíza. """ assert vyhodnot("oxoxoxoxoxoxoxoxoxox", "x", "o") == "!" assert vyhodnot("xxooxxooxxooxxooxxoo", "x", "o") == "!" assert vyhodnot("xoxxoxooxoxxooxoxoox", "x", "o") == "!" assert vyhodnot("oxxooxoxoxxooxoxoxxo", "x", "o") == "!" assert vyhodnot("xoxxoxooxoxxoo", "x", "o") == "!" assert vyhodnot("oxoxxooxoxoxxo", "x", "o") == "!" assert vyhodnot("xoxoxxooxoxooxxoxoxooxxo", "x", "o") == "!" assert vyhodnot("oxoxooxxoxoxxooxoxoxxoox", "x", "o") == "!"
def test_vyhodnot(): assert p.vyhodnot("xxx----") == "x" assert p.vyhodnot("x-ox----") == "-" assert p.vyhodnot("xoxoxoxo") == "!" assert p.vyhodnot("xxxxxxxx") == "x" assert p.vyhodnot("--xx-ooo-") == "o" # try: with pytest.raises(ValueError): p.vyhodnot("12324321a")
def test_vyhodnot_hru(): """Hra neskončila""" from piskvorky import vyhodnot assert vyhodnot('xx----------------oo') == '-' assert vyhodnot('-xoxoxoxoxoxoxoxoxox') == '-' assert vyhodnot('-xooxxooxxooxxooxxoo') == '-' assert vyhodnot('xoxoxoxoxoxoxoxoxox-') == '-' assert vyhodnot('xooxxooxxooxxooxxoo-') == '-' assert vyhodnot('oxoxoxoxo-oxoxoxoxox') == '-' assert vyhodnot('xxooxxoox-ooxxooxxoo') == '-'
def test_vyhodnot(): assert piskvorky.vyhodnot('------x-----') == '-' assert piskvorky.vyhodnot('---xxo--xxo-') == '-' assert piskvorky.vyhodnot('-x-x-x-x-x-o-o-o') == '-' assert piskvorky.vyhodnot('-xxx---oo-x') == 'x' assert piskvorky.vyhodnot('o-o--xx--ooo') == 'o' assert piskvorky.vyhodnot('oxoxoxoxox') == '!'
def test_vyhodnot(): with pytest.raises(Exception) as ex1: piskvorky.vyhodnot("------xxx-----------") assert str(ex1) == "Vyhrály křížky!" with pytest.raises(Exception) as ex2: piskvorky.vyhodnot("------ooo-----------") assert str(ex2) == "Vyhrály kolečka!" with pytest.raises(Exception) as ex3: piskvorky.vyhodnot("xoxoxoxoxoxo") assert str(ex3) == "Remíza!" assert piskvorky.vyhodnot("-xoxoxoxo") == "-"
def test_vyhodnot_vyhry(): vysledek = vyhodnot("xxx-----------------", "x") vysledek = vyhodnot("--ooxxx----------o--", "o") vysledek = vyhodnot("xxxoxoxoxoxoxoxoxoxo", "o") assert vysledek == "x" vysledek = vyhodnot("-----------------ooo", "x") vysledek = vyhodnot("xx------ooo-------xx", "o") vysledek = vyhodnot("xoooxoxoxoxoxoxoxoxo", "o") assert vysledek == "o"
def test_vyhodnot_specialni_pole(): ''' Test funkce vyhodnot: test různých polí, které mohou být zadány jako argument. ''' a = '--xXxO......123-------' situace = [a, 'x' * 3 + '-' * 6, str(123456789), ' ' * 10000] for pole in situace: assert piskvorky.vyhodnot(pole) in ['x', 'o', '!', '-'] with pytest.raises(TypeError): piskvorky.vyhodnot(10) piskvorky.vyhodnot(10.5) with pytest.raises(ValueError): piskvorky.vyhodnot('')
def piskvorky1d(): pole = '--------------------' stav_hry = '-' hraje = 1 while stav_hry == '-': if hraje == 1: novy_vstup = True while novy_vstup: vstup = int(input('Zadej číslo pole, kam chceš hrát (0-19): ')) hlaska, novy_vstup = piskvorky.over_vstup(pole, vstup) if novy_vstup: print(hlaska) pole = piskvorky.util.tah(pole, vstup, 'x') print(pole) hraje = 2 else: pole = piskvorky.ai_eva_blazkova.tah_pocitace(pole, 'o') print(pole) hraje = 1 stav_hry = piskvorky.vyhodnot(pole) print(piskvorky.jak_to_dopadlo(stav_hry))
def test_vyhodnot_vyhru_x(): """Křížky vyhrály""" from piskvorky import vyhodnot assert vyhodnot('xxx-----------------') == 'x'
def test_vyhnoceni_remiza(): assert vyhodnot('xxooxxooxxoxxooxxoox') == '!'
def test_vyhnoceni_nekonec(): assert vyhodnot('xx------oo-x-oo-----') == '-'
from piskvorky import tah_hrace, vyhodnot from ai import tah_pocitace pole = "-" * 20 na_tahu = "x" while True: if na_tahu == "x": cislo_policka = int(input("""Zadej pozici od 0 do 19: """)) pole = tah_hrace(pole) na_tahu = "o" elif na_tahu == "o": pole = tah_pocitace(pole) na_tahu = "x" vysledek = vyhodnot(pole) print(pole) if vysledek != "-": if vysledek == "!": print("Remiza! {}".format(pole)) elif vysledek == "x": print("Vyhravas nad pocitacem! {}".format(pole)) elif vysledek == "o": print("Bohuzel, pocitac vyhral. {}".format(pole)) else: raise ValueError("Nepripustny vysledek hry '{}'".format(vysledek)) break
def test_vyhodnot_vyhru_o(): """Kolečka vyhrála""" from piskvorky import vyhodnot assert vyhodnot('ooo-----------------') == 'o'
def test_vyhodnot(): assert vyhodnot("oxxxo") == 'x' assert vyhodnot("oxxoooxo") == 'o' assert vyhodnot("oxxoxo") == '!' assert vyhodnot("ox-oxo") == '-'
def test_vyhodnot_remizu(): """Nastala remíza""" from piskvorky import vyhodnot assert vyhodnot('oxoxoxoxoxoxoxoxoxox') == '!' assert vyhodnot('xxooxxooxxooxxooxxoo') == '!'
# 3. kolo: -------xx-o--------- # 4. kolo: -------xxoo--------- # 5. kolo: ------xxxoo--------- # Hráč, která dá tři své symboly vedle sebe, vyhrál. #Nejdrive se vytvori herni plan, pote se strida tah hrace a pociace, dokud nekdo nevyhraje. herni_pole = "-" * 20 na_tahu = "x" while True: if na_tahu == "x": herni_pole = tah_hrace(herni_pole) na_tahu = "o" elif na_tahu == "o": herni_pole = tah_pocitace(herni_pole) na_tahu = "x" vysledek = vyhodnot(herni_pole) print(herni_pole) if vysledek != "-": if vysledek == "!": print(f"Remiza! {herni_pole}") elif vysledek == "x": print(f"Vyhravas nad pocitacem! {herni_pole}") elif vysledek == "o": print(F"Bohuzel, pocitac vyhral. {herni_pole}") else: raise ValueError(f"Nepripustny vysledek hry '{vysledek}'") break
def test_vyhnoceni_krizky(): assert vyhodnot('xxx----oo--x-oo-----') == 'x'
def test_vyhodnot(): assert vyhodnot("ooxxxo-xo--x-oo-xx--") == "x" assert vyhodnot("--------------------") == "-" assert vyhodnot("ooo----xx-----------") == "o" assert vyhodnot("xoxoxoxoxoxoxoxoxoxo") == "!"
def test_vyhodnot_remiza(): vysledek = vyhodnot("xxooxoxoxoxoxoxoxoxx", "x") assert vysledek == "!"
def test_vyhodnot(): assert piskvorky.vyhodnot('ooxxxooxoxox') == 'x' assert piskvorky.vyhodnot('oooxxooxoxox') == 'o' assert piskvorky.vyhodnot('ooxoxooxoxox') == '!' assert piskvorky.vyhodnot('oo-xxooxoxox') == '-' assert piskvorky.vyhodnot('oooooooooooo') == 'o'