def test_semelhanca_partidos(self): '''Testa a função de semelhança para partidos''' partido1 = 'girondinos' partido2 = 'jacobinos' votacoes = [] # votações do test # v1: p1(3,0,0) p2(0,3,0) # v2: p1(0,2,1) p2(2,0,1) # v3: p1(3,0,0) p2(0,2,1) dep1Sim = Deputado() dep1Sim.partido = partido1 dep1Sim.voto = model.SIM dep1Nao = Deputado() dep1Nao.partido = partido1 dep1Nao.voto = model.NAO dep1Abs = Deputado() dep1Abs.partido = partido1 dep1Abs.voto = model.ABSTENCAO dep2Sim = Deputado() dep2Sim.partido = partido2 dep2Sim.voto = model.SIM dep2Nao = Deputado() dep2Nao.partido = partido2 dep2Nao.voto = model.NAO dep2Abs = Deputado() dep2Abs.partido = partido2 dep2Abs.voto = model.ABSTENCAO # votação 1 vot = Votacao() vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) votacoes.append(vot) # votação 2 vot = Votacao() vot.deputados.append(dep1Nao) vot.deputados.append(dep1Nao) vot.deputados.append(dep1Abs) vot.deputados.append(dep2Sim) vot.deputados.append(dep2Sim) vot.deputados.append(dep2Abs) votacoes.append(vot) # votação 3 vot = Votacao() vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Abs) votacoes.append(vot) proposicao = Proposicao() proposicao.votacoes = votacoes proposicoes = [proposicao] # invocando a função testada s = partidos.semelhanca(partido1, partido2, proposicoes) # testando se tá certo expected = 0.008766487 # calculado na mão self.assertAlmostEqual(expected, s, 5)
def test_semelhanca_partidos(self): """ Tests the function of similarity for political partidos.""" party1 = 'girondinos' party2 = 'jacobinos' votings = [] # Votations of the test: # v1: p1(3,0,0) p2(0,3,0) # v2: p1(0,2,1) p2(2,0,1) # v3: p1(3,0,0) p2(0,2,1) dep1Sim = Deputado() dep1Sim.partido = party1 dep1Sim.voto = model.SIM dep1Nao = Deputado() dep1Nao.partido = party1 dep1Nao.voto = model.NAO dep1Abs = Deputado() dep1Abs.partido = party1 dep1Abs.voto = model.ABSTENCAO dep2Sim = Deputado() dep2Sim.partido = party2 dep2Sim.voto = model.SIM dep2Nao = Deputado() dep2Nao.partido = party2 dep2Nao.voto = model.NAO dep2Abs = Deputado() dep2Abs.partido = party2 dep2Abs.voto = model.ABSTENCAO # First grade: vot = Votacao() vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) votings.append(vot) # Second grade: vot = Votacao() vot.deputados.append(dep1Nao) vot.deputados.append(dep1Nao) vot.deputados.append(dep1Abs) vot.deputados.append(dep2Sim) vot.deputados.append(dep2Sim) vot.deputados.append(dep2Abs) votings.append(vot) # Third grade: vot = Votacao() vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Abs) votings.append(vot) proposition = Proposicao() proposition.votacoes = votings propositions = [proposition] # Tested by invoking the function: s = partidos.similarity(party1, party2, propositions) # If testing is right; # Calculating on hand: expected = 0.008766487 self.assertAlmostEqual(expected, s, 5)
def test_vetor_votacoes(self): '''testa a geração de um vetor de votações''' # votações testadas (s,n,a): #(9,0,0) #(0,8,1) #(7,1,1) #(3,3,3) partido = 'arena' votacoes = [] depSim = Deputado() depSim.partido = partido depSim.voto = model.SIM depNao = Deputado() depNao.partido = partido depNao.voto = model.NAO depAbs = Deputado() depAbs.partido = partido depAbs.voto = model.ABSTENCAO # 1a votação vot = Votacao() for i in range(0, 9): vot.deputados.append(depSim) votacoes.append(vot) # 2a votação vot = Votacao() for i in range(0, 8): vot.deputados.append(depNao) vot.deputados.append(depAbs) votacoes.append(vot) # 3a votação vot = Votacao() for i in range(0, 7): vot.deputados.append(depSim) vot.deputados.append(depNao) vot.deputados.append(depAbs) votacoes.append(vot) # 4a votação vot = Votacao() for i in range(0, 3): vot.deputados.append(depSim) for i in range(0, 3): vot.deputados.append(depNao) for i in range(0, 3): vot.deputados.append(depAbs) votacoes.append(vot) proposicao = Proposicao() proposicao.votacoes = votacoes proposicoes = [proposicao] # invocando a função testada vetor = partidos.vetor_votacoes(partido, proposicoes) # testando se tá certo expected = [1, -0.88889, 0.66667, 0] self.assertEqual(len(expected), len(vetor)) for e, v in zip(expected, vetor): self.assertAlmostEqual(e, v, 5)
def test_vetor_votacoes(self): """Tests the generation of an array of polls.""" # Tested polls (s,n,a): # (9,0,0) # (0,8,1) # (7,1,1) # (3,3,3) party = 'arena' votings = [] deputy_vote_yes = Deputado() deputy_vote_yes.partido = party deputy_vote_yes.voto = model.SIM deputy_vote_no = Deputado() deputy_vote_no.partido = party deputy_vote_no.voto = model.NAO depute_vote_abstention = Deputado() depute_vote_abstention.partido = party depute_vote_abstention.voto = model.ABSTENCAO # First grade: vote = Votacao() for i in range(0, 9): vote.deputados.append(deputy_vote_yes) votings.append(vote) # Second grade:: vote = Votacao() for i in range(0, 8): vote.deputados.append(deputy_vote_no) vote.deputados.append(depute_vote_abstention) votings.append(vote) # Third grade: vote = Votacao() for i in range(0, 7): vote.deputados.append(deputy_vote_yes) vote.deputados.append(deputy_vote_no) vote.deputados.append(depute_vote_abstention) votings.append(vote) # Fourth voting: vote = Votacao() for i in range(0, 3): vote.deputados.append(deputy_vote_yes) for i in range(0, 3): vote.deputados.append(deputy_vote_no) for i in range(0, 3): vote.deputados.append(depute_vote_abstention) votings.append(vote) proposition = Proposicao() proposition.votacoes = votings propositions = [proposition] # Tested by invoking the function: vector = partidos.votings_vector(party, propositions) # If testing is right: expected = [1, -0.88889, 0.66667, 0] self.assertEqual(len(expected), len(vector)) for e, v in zip(expected, vector): self.assertAlmostEqual(e, v, 5)
def test_vetor_votacoes(self): """Tests the generation of an array of polls.""" # Tested polls (s,n,a): # (9,0,0) # (0,8,1) # (7,1,1) # (3,3,3) party = 'arena' votings = [] deputy_vote_yes = Deputado() deputy_vote_yes.partido = party deputy_vote_yes.voto = model.SIM deputy_vote_no = Deputado() deputy_vote_no.partido = party deputy_vote_no.voto = model.NAO depute_vote_abstention = Deputado() depute_vote_abstention.partido = party depute_vote_abstention.voto = model.ABSTENCAO # First grade: vote = Votacao() for i in range(0,9): vote.deputados.append(deputy_vote_yes) votings.append(vote) # Second grade:: vote = Votacao() for i in range(0,8): vote.deputados.append(deputy_vote_no) vote.deputados.append(depute_vote_abstention) votings.append(vote) # Third grade: vote = Votacao() for i in range(0,7): vote.deputados.append(deputy_vote_yes) vote.deputados.append(deputy_vote_no) vote.deputados.append(depute_vote_abstention) votings.append(vote) # Fourth voting: vote = Votacao() for i in range(0,3): vote.deputados.append(deputy_vote_yes) for i in range(0,3): vote.deputados.append(deputy_vote_no) for i in range(0,3): vote.deputados.append(depute_vote_abstention) votings.append(vote) proposition = Proposicao() proposition.votacoes = votings propositions = [proposition] # Tested by invoking the function: vector = partidos.votings_vector(party, propositions) # If testing is right: expected = [1, -0.88889, 0.66667, 0] self.assertEqual(len(expected), len(vector)) for e, v in zip(expected, vector): self.assertAlmostEqual(e, v, 5)
def test_semelhanca_partidos(self): '''Testa a função de semelhança para partidos''' partido1 = 'girondinos' partido2 = 'jacobinos' votacoes = [] # votações do test # v1: p1(3,0,0) p2(0,3,0) # v2: p1(0,2,1) p2(2,0,1) # v3: p1(3,0,0) p2(0,2,1) dep1Sim = Deputado() dep1Sim.partido = partido1 dep1Sim.voto = model.SIM dep1Nao = Deputado() dep1Nao.partido = partido1 dep1Nao.voto = model.NAO dep1Abs = Deputado() dep1Abs.partido = partido1 dep1Abs.voto = model.ABSTENCAO dep2Sim = Deputado() dep2Sim.partido = partido2 dep2Sim.voto = model.SIM dep2Nao = Deputado() dep2Nao.partido = partido2 dep2Nao.voto = model.NAO dep2Abs = Deputado() dep2Abs.partido = partido2 dep2Abs.voto = model.ABSTENCAO # votação 1 vot = Votacao() vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) votacoes.append(vot) # votação 2 vot = Votacao() vot.deputados.append(dep1Nao) vot.deputados.append(dep1Nao) vot.deputados.append(dep1Abs) vot.deputados.append(dep2Sim) vot.deputados.append(dep2Sim) vot.deputados.append(dep2Abs) votacoes.append(vot) # votação 3 vot = Votacao() vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep1Sim) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Nao) vot.deputados.append(dep2Abs) votacoes.append(vot) proposicao = Proposicao() proposicao.votacoes = votacoes proposicoes = [proposicao] # invocando a função testada s = partidos.semelhanca(partido1, partido2, proposicoes) # testando se tá certo expected = 0.2524905 # calculado na mão self.assertAlmostEqual(expected, s, 5)
def test_vetor_votacoes(self): '''testa a geração de um vetor de votações''' # votações testadas (s,n,a): #(9,0,0) #(0,8,1) #(7,1,1) #(3,3,3) partido = 'arena' votacoes = [] depSim = Deputado() depSim.partido = partido depSim.voto = model.SIM depNao = Deputado() depNao.partido = partido depNao.voto = model.NAO depAbs = Deputado() depAbs.partido = partido depAbs.voto = model.ABSTENCAO # 1a votação vot = Votacao() for i in range(0,9): vot.deputados.append(depSim) votacoes.append(vot) # 2a votação vot = Votacao() for i in range(0,8): vot.deputados.append(depNao) vot.deputados.append(depAbs) votacoes.append(vot) # 3a votação vot = Votacao() for i in range(0,7): vot.deputados.append(depSim) vot.deputados.append(depNao) vot.deputados.append(depAbs) votacoes.append(vot) # 4a votação vot = Votacao() for i in range(0,3): vot.deputados.append(depSim) for i in range(0,3): vot.deputados.append(depNao) for i in range(0,3): vot.deputados.append(depAbs) votacoes.append(vot) proposicao = Proposicao() proposicao.votacoes = votacoes proposicoes = [proposicao] # invocando a função testada vetor = partidos.vetor_votacoes(partido, proposicoes) # testando se tá certo expected = [1, 0.055555556, 0.833333333, 0.5] self.assertEqual(len(expected), len(vetor)) for e, v in zip(expected, vetor): self.assertAlmostEqual(e, v, 5)