Example #1
0
    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)
Example #2
0
  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)
Example #3
0
# 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))
Example #4
0
# 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))