def test_acerta_todas(self):

        for suspeito in xrange(1, 7):
            for local in xrange(1, 11):
                for arma in xrange(1, 7):
                    real = (suspeito, local, arma)

                    detetive = Detetive()
                    retorno = detetive.proximo_chute()
                    resultado = assassino(retorno, real)
                    while resultado != 0:
                        retorno = detetive.proximo_chute(resultado)
                        resultado = assassino(retorno, real)
                    self.assertEqual(retorno, real)
    def test_acerta_todas(self):

        for suspeito in xrange(1, 7):
            for local in xrange(1, 11):
                for arma in xrange(1, 7):
                    real = (suspeito, local, arma)

                    detetive = Detetive()
                    retorno = detetive.proximo_chute()
                    resultado = assassino(retorno, real)
                    while resultado != 0:
                        retorno = detetive.proximo_chute(resultado)
                        resultado = assassino(retorno, real)
                    self.assertEqual(retorno, real)
 def test_erra_suspeito_e_arma_aleatorio(self):
     retorno = [assassino(acho_que=(1, 1, 1), real=(2, 1, 2)) for _ in xrange(10)]
     self.assertFalse(reduce(lambda a, b: a == b and a, retorno))
 def test_tres_pessoas_pessoa_tres_fica_viva_passo_2(self):
     self.assertEqual(assassino(3, 2), 3)
 def test_errou_tudo_de_cara(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(2, 2, 2))
     esperado = (1, 2, 3)
     self.assertTrue(retorno, esperado)
 def test_errou_tudo_de_cara(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(2, 2, 2))
     esperado = (1, 2, 3)
     self.assertTrue(retorno, esperado)
 def test_errou_tudo_de_cara_aleatorio(self):
     retorno = [
         assassino(acho_que=(1, 1, 1), real=(2, 2, 2)) for _ in xrange(10)
     ]
     self.assertFalse(reduce(lambda a, b: a == b and a, retorno))
 def test_erra_suspeito(self):
     retorno = assassino(acho_que=(2, 1, 1), real=(1, 1, 1))
     esperado = 1
     self.assertEqual(retorno, esperado)
 def test_uma_pessoa_pessoa_um_fica_viva_passo_1(self):
     self.assertEqual(assassino(1, 1), 1)
Exemple #10
0
 def test_duas_pessoas_pessoa_dois_fica_viva_passo_1(self):
     self.assertEqual(assassino(2, 1), 2)
 def test_erra_suspeito(self):
     retorno = assassino(acho_que=(2, 1, 1), real=(1, 1, 1))
     esperado = 1
     self.assertEqual(retorno, esperado)
Exemple #12
0
 def test_quatro_pessoas_pessoa_tres_fica_viva_passo_3(self):
     self.assertEqual(assassino(4, 3), 3)
Exemple #13
0
 def test_uma_pessoa_pessoa_um_fica_viva_passo_1(self):
     self.assertEqual(assassino(1, 1), 1)
Exemple #14
0
 def test_tres_pessoas_pessoa_tres_fica_viva_passo_2(self):
     self.assertEqual(assassino(3, 2), 3)
Exemple #15
0
 def test_nenhuma_pessoa_fica_viva_com_0_pessoas(self):
     self.assertEqual(assassino(0, 1), 0)
 def test_duas_pessoas_pessoa_dois_fica_viva_passo_1(self):
     self.assertEqual(assassino(2, 1), 2)
 def test_errou_tudo_de_cara_aleatorio(self):
     retorno = [assassino(acho_que=(1, 1, 1), real=(2, 2, 2)) for _ in xrange(10)]
     self.assertFalse(reduce(lambda a, b: a == b and a, retorno))
 def test_erra_local(self):
     retorno = assassino(acho_que=(1, 2, 1), real=(1, 1, 1))
     esperado = 2
     self.assertEqual(retorno, esperado)
 def test_acertou_tudo_de_cara(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(1, 1, 1))
     esperado = 0
     self.assertEqual(retorno, esperado)
 def test_erra_suspeito_e_local(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(2, 2, 1))
     esperado = (1, 2)
     self.assertTrue(retorno in esperado)
 def test_erra_local(self):
     retorno = assassino(acho_que=(1, 2, 1), real=(1, 1, 1))
     esperado = 2
     self.assertEqual(retorno, esperado)
 def test_quatro_pessoas_pessoa_tres_fica_viva_passo_3(self):
     self.assertEqual(assassino(4, 3), 3)
 def test_erra_arma(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(1, 1, 2))
     esperado = 3
     self.assertEqual(retorno, esperado)
 def test_erra_arma(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(1, 1, 2))
     esperado = 3
     self.assertEqual(retorno, esperado)
 def test_erra_local_e_arma(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(1, 2, 2))
     esperado = (2, 3)
     self.assertTrue(retorno in esperado)
 def test_erra_suspeito_e_local(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(2, 2, 1))
     esperado = (1, 2)
     self.assertTrue(retorno in esperado)
 def test_erra_suspeito_e_arma_aleatorio(self):
     retorno = [
         assassino(acho_que=(1, 1, 1), real=(2, 1, 2)) for _ in xrange(10)
     ]
     self.assertFalse(reduce(lambda a, b: a == b and a, retorno))
 def test_erra_local_e_arma(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(1, 2, 2))
     esperado = (2, 3)
     self.assertTrue(retorno in esperado)
 def test_acertou_tudo_de_cara(self):
     retorno = assassino(acho_que=(1, 1, 1), real=(1, 1, 1))
     esperado = 0
     self.assertEqual(retorno, esperado)
 def test_nenhuma_pessoa_fica_viva_com_0_pessoas(self):
     self.assertEqual(assassino(0, 1), 0)