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): '''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)
# but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. """Script vetores -- imprime os vetores de votações""" import proposicoes import camaraws import partidos import sys from partidos import PARTIDOS length = len(PARTIDOS) # recuperação das proposições votadas = proposicoes.parse() # identificação das proposições votadas em 2011 proposicoes = [] # listagem das proposições com suas respectivas votações n_vot = 0 # total de votações analisadas for prop in votadas: print('Analisando proposição ' + prop['id']) prop_vot = camaraws.obter_votacao(prop['tipo'], prop['num'], prop['ano']) # obtêm votação do web service n_vot += len(prop_vot.votacoes) proposicoes.append(prop_vot) for p in PARTIDOS: v = partidos.vetor_votacoes(p, proposicoes) print("%s\n%s" % (p, v))
# but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. """Script vetores -- imprime os vetores de votações""" import proposicoes import camaraws import partidos import sys from partidos import PARTIDOS length = len(PARTIDOS) # recuperação das proposições votadas = proposicoes.parse() # identificação das proposições votadas em 2011 proposicoes = [] # listagem das proposições com suas respectivas votações n_vot = 0 # total de votações analisadas for prop in votadas: print('Analisando proposição ' + prop['id']) prop_vot = camaraws.obter_votacao( prop['tipo'], prop['num'], prop['ano']) # obtêm votação do web service n_vot += len(prop_vot.votacoes) proposicoes.append(prop_vot) for p in PARTIDOS: v = partidos.vetor_votacoes(p, proposicoes) print("%s\n%s" % (p, v))