add more tests
This commit is contained in:
parent
2be82a7535
commit
b9d8fc5f7f
@ -59,6 +59,7 @@ def test_volcanic():
|
|||||||
volcanic_guy.hand = [Volcanic(0,0), Bang(0,0), Bang(0,0)]
|
volcanic_guy.hand = [Volcanic(0,0), Bang(0,0), Bang(0,0)]
|
||||||
volcanic_guy.play_card(0)
|
volcanic_guy.play_card(0)
|
||||||
assert isinstance(volcanic_guy.equipment[0], Volcanic)
|
assert isinstance(volcanic_guy.equipment[0], Volcanic)
|
||||||
|
assert volcanic_guy.get_sight() == 1
|
||||||
volcanic_guy.play_card(0, g.players[(g.turn+1)%3].name)
|
volcanic_guy.play_card(0, g.players[(g.turn+1)%3].name)
|
||||||
assert len(volcanic_guy.hand) == 1
|
assert len(volcanic_guy.hand) == 1
|
||||||
volcanic_guy.play_card(0, g.players[(g.turn+1)%3].name)
|
volcanic_guy.play_card(0, g.players[(g.turn+1)%3].name)
|
||||||
@ -99,3 +100,218 @@ def test_dinamite():
|
|||||||
g.players[g.turn].pick()
|
g.players[g.turn].pick()
|
||||||
assert len(g.players[g.turn].equipment) == 0
|
assert len(g.players[g.turn].equipment) == 0
|
||||||
assert g.players[g.turn].lives == 1
|
assert g.players[g.turn].lives == 1
|
||||||
|
|
||||||
|
# test mirino
|
||||||
|
def test_mirino():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(4)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
mirino_guy = g.players[g.turn]
|
||||||
|
mirino_guy.draw('')
|
||||||
|
mirino_guy.hand = [Mirino(0,0)]
|
||||||
|
assert mirino_guy.get_sight(countWeapon=False) == 1
|
||||||
|
mirino_guy.play_card(0)
|
||||||
|
assert mirino_guy.get_sight(countWeapon=False) == 2
|
||||||
|
|
||||||
|
# test mustang
|
||||||
|
def test_mustang():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(3)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
mustang_guy = g.players[g.turn]
|
||||||
|
mustang_guy.draw('')
|
||||||
|
mustang_guy.hand = [Mustang(0,0)]
|
||||||
|
assert mustang_guy.get_visibility() == 0
|
||||||
|
mustang_guy.play_card(0)
|
||||||
|
assert mustang_guy.get_visibility() == 1
|
||||||
|
|
||||||
|
# test Prigione
|
||||||
|
def test_prigione():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(4)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
sheriff = g.players[g.turn]
|
||||||
|
sheriff.draw('')
|
||||||
|
sheriff.hand = [Prigione(0,0)]
|
||||||
|
sheriff.play_card(0, g.players[(g.turn+1)%4].name)
|
||||||
|
assert len(sheriff.hand) == 0
|
||||||
|
sheriff.end_turn()
|
||||||
|
g.deck.cards.insert(0, Prigione(Suit.CLUBS, 5))
|
||||||
|
skip_check = g.turn
|
||||||
|
g.players[g.turn].pick()
|
||||||
|
assert g.turn != skip_check
|
||||||
|
g.players[g.turn].draw('')
|
||||||
|
g.players[g.turn].hand = [Prigione(0,0)]
|
||||||
|
g.players[g.turn].play_card(0, sheriff.name)
|
||||||
|
assert len(g.players[g.turn].hand) == 1
|
||||||
|
g.players[g.turn].play_card(0, g.players[(g.turn+1)%4].name)
|
||||||
|
g.players[g.turn].end_turn()
|
||||||
|
g.deck.cards.insert(0, Prigione(Suit.HEARTS, 5))
|
||||||
|
skip_check = g.turn
|
||||||
|
g.players[g.turn].pick()
|
||||||
|
assert g.turn == skip_check
|
||||||
|
|
||||||
|
# test all weapons ranges
|
||||||
|
def test_all_weapons():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(4)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
g.players[g.turn].draw('')
|
||||||
|
g.players[g.turn].hand = [Volcanic(0,0), Schofield(0,0), Remington(0,0), RevCarabine(0,0), Winchester(0,0)]
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert g.players[g.turn].get_sight() == 1
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert g.players[g.turn].get_sight() == 2
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert g.players[g.turn].get_sight() == 3
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert g.players[g.turn].get_sight() == 4
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert g.players[g.turn].get_sight() == 5
|
||||||
|
|
||||||
|
# test bang
|
||||||
|
def test_bang():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(2)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
g.players[g.turn].draw('')
|
||||||
|
g.players[g.turn].hand = [Bang(0,0), Bang(0,0)]
|
||||||
|
assert len(g.players[g.turn].hand) == 2
|
||||||
|
g.players[g.turn].play_card(0, g.players[(g.turn+1)%2].name)
|
||||||
|
assert len(g.players[g.turn].hand) == 1
|
||||||
|
g.players[g.turn].play_card(0, g.players[(g.turn+1)%2].name)
|
||||||
|
assert len(g.players[g.turn].hand) == 1
|
||||||
|
|
||||||
|
# test birra
|
||||||
|
def test_birra_2p():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(2)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
g.players[g.turn].draw('')
|
||||||
|
g.players[g.turn].hand = [Birra(0,0)]
|
||||||
|
g.players[g.turn].lives = 1
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert g.players[g.turn].lives == 1
|
||||||
|
|
||||||
|
# test birra
|
||||||
|
def test_birra_3p():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(3)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
initial_p = g.players[g.turn]
|
||||||
|
g.players[g.turn].draw('')
|
||||||
|
g.players[g.turn].hand = [Birra(0,0)]
|
||||||
|
g.players[g.turn].lives = 1
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert g.players[g.turn].lives == 2
|
||||||
|
# test beer save
|
||||||
|
g.players[g.turn].hand = [Birra(0,0)]
|
||||||
|
g.players[g.turn].lives = 1
|
||||||
|
g.players[g.turn].end_turn()
|
||||||
|
g.players[g.turn].draw('')
|
||||||
|
g.players[g.turn].hand = [Bang(0,0)]
|
||||||
|
g.players[g.turn].play_card(0, initial_p.name)
|
||||||
|
assert initial_p.lives == 1
|
||||||
|
# test non overflow
|
||||||
|
g.players[g.turn].lives = g.players[g.turn].max_lives
|
||||||
|
g.players[g.turn].hand = [Birra(0,0)]
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert g.players[g.turn].lives == g.players[g.turn].max_lives
|
||||||
|
|
||||||
|
# test CatBalou
|
||||||
|
#TODO
|
||||||
|
|
||||||
|
# test Diligenza
|
||||||
|
def test_diligenza():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(4)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
g.players[g.turn].draw('')
|
||||||
|
g.players[g.turn].hand = [Diligenza(0,0)]
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert len(g.players[g.turn].hand) == 2
|
||||||
|
|
||||||
|
# test Duello
|
||||||
|
#TODO
|
||||||
|
|
||||||
|
# test Emporio
|
||||||
|
#TODO
|
||||||
|
|
||||||
|
# test Gatling
|
||||||
|
#TODO
|
||||||
|
|
||||||
|
# test Indiani
|
||||||
|
#TODO
|
||||||
|
|
||||||
|
# test Mancato
|
||||||
|
#TODO
|
||||||
|
|
||||||
|
# test Panico
|
||||||
|
#TODO
|
||||||
|
|
||||||
|
# test Saloon
|
||||||
|
#TODO
|
||||||
|
|
||||||
|
# test WellsFargo
|
||||||
|
def test_diligenza():
|
||||||
|
sio = DummySocket()
|
||||||
|
g = Game('test', sio)
|
||||||
|
ps = [Player(f'p{i}', f'p{i}', sio) for i in range(4)]
|
||||||
|
for p in ps:
|
||||||
|
g.add_player(p)
|
||||||
|
g.start_game()
|
||||||
|
for p in ps:
|
||||||
|
p.available_characters = [Character('test_char', 4)]
|
||||||
|
p.set_character(p.available_characters[0].name)
|
||||||
|
g.players[g.turn].draw('')
|
||||||
|
g.players[g.turn].hand = [WellsFargo(0,0)]
|
||||||
|
g.players[g.turn].play_card(0)
|
||||||
|
assert len(g.players[g.turn].hand) == 3
|
||||||
|
Loading…
Reference in New Issue
Block a user