def test_devolve_propriedades(self): jogo = Tabuleiro() jogador = jogo.jogadores[0] propriedade = jogo.propriedades[0] propriedade.proprietario = jogo.jogadores[0] jogo.devolve_propriedades(jogador) self.assertIsNone(propriedade.proprietario)
def Jogar(): quantidade_timeout = 0 quantidade_turnos = 0 vitorias = { 'Cauteloso': 0, 'Exigente': 0, 'Impulsivo': 0, 'Aleatório': 0, } for i in range(0, 300): tabuleiro = Tabuleiro() tabuleiro.partida() if tabuleiro.time_out: quantidade_timeout += 1 quantidade_turnos += tabuleiro.quantidade_rodadas vencendor = tabuleiro.vencedor.nome if vencendor == 'Cauteloso': vitorias['Cauteloso'] += 1 elif vencendor == 'Exigente': vitorias['Exigente'] += 1 elif vencendor == 'Impulsivo': vitorias['Impulsivo'] += 1 elif vencendor == 'Aleatório': vitorias['Aleatório'] += 1 print('Quantidade de time outs: ', quantidade_timeout) print('Média de Turnos: ', quantidade_turnos / 300) for perfil in vitorias: print('Perfil {} Porcentagem: {}'.format( perfil, porcentagem(vitorias[perfil]))) print('Perfil que mais vence: ', max(vitorias, key=vitorias.get))
def test_valor_debitado_jogador_apos_pagar_aluguel(self): jogo = Tabuleiro() jogador = jogo.jogadores[0] propriedade = jogo.propriedades[0] propriedade.proprietario = jogo.jogadores[1] jogo.pagar_aluguel(jogador, propriedade) self.assertEqual(jogador.saldo, 300 - propriedade.valor_aluguel)
def test_define_vencedor_desempate(self): jogo = Tabuleiro() jogador1 = jogo.jogadores[0] jogador2 = jogo.jogadores[1] jogador3 = jogo.jogadores[2] jogador4 = jogo.jogadores[3] ordem_jogadores = [jogador1, jogador2, jogador3, jogador4] jogador1.saldo = 50 jogador2.saldo = 0 jogador3.saldo = 500 jogador4.saldo = 500 self.assertEqual(jogo.define_vencedor(ordem_jogadores), jogador3)
def test_partida_nao_iniciada_sem_vencedor(self): jogo = Tabuleiro() self.assertIsNone(jogo.vencedor)
def test_valor_debitado_jogador_apos_compra_propriedade(self): jogo = Tabuleiro() jogador = jogo.jogadores[0] propriedade = jogo.propriedades[0] jogo.comprar_propriedade(jogador, propriedade) self.assertEqual(jogador.saldo, 300 - propriedade.valor_venda)
def test_posse_jogador_compra_propriedade(self): jogo = Tabuleiro() jogador = jogo.jogadores[0] propriedade = jogo.propriedades[0] jogo.comprar_propriedade(jogador, propriedade) self.assertEqual(propriedade.proprietario, jogador)
def test_posicao_jogadores_deve_ser_igual_300(self): jogo = Tabuleiro() for jogador in jogo.jogadores: self.assertEqual(jogador.saldo, 300)
def test_quantidade_de_jogadores_deve_ser_igual_4(self): jogo = Tabuleiro() self.assertEqual(len(jogo.jogadores), 4)
def test_quantidade_de_propriedades_deve_ser_igual_20(self): jogo = Tabuleiro() self.assertEqual(len(jogo.propriedades), 20)
def test_partida_completa_com_vencedor(self): jogo = Tabuleiro() jogo.partida() self.assertIsNotNone(jogo.vencedor)