Esempio n. 1
0
 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)
Esempio n. 2
0
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))
Esempio n. 3
0
 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)
Esempio n. 4
0
 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)
Esempio n. 5
0
 def test_partida_nao_iniciada_sem_vencedor(self):
     jogo = Tabuleiro()
     self.assertIsNone(jogo.vencedor)
Esempio n. 6
0
 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)
Esempio n. 7
0
 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)
Esempio n. 8
0
 def test_posicao_jogadores_deve_ser_igual_300(self):
     jogo = Tabuleiro()
     for jogador in jogo.jogadores:
         self.assertEqual(jogador.saldo, 300)
Esempio n. 9
0
 def test_quantidade_de_jogadores_deve_ser_igual_4(self):
     jogo = Tabuleiro()
     self.assertEqual(len(jogo.jogadores), 4)
Esempio n. 10
0
 def test_quantidade_de_propriedades_deve_ser_igual_20(self):
     jogo = Tabuleiro()
     self.assertEqual(len(jogo.propriedades), 20)
Esempio n. 11
0
 def test_partida_completa_com_vencedor(self):
     jogo = Tabuleiro()
     jogo.partida()
     self.assertIsNotNone(jogo.vencedor)