Exemple #1
0
    def __init__(self):
        rospy.init_node("sala3", anonymous=True)

        self.c = Controle()

        rospy.Subscriber("ctrl", Empty, self.controlCb)

        rospy.Subscriber('botoes_init', BotoesMsg, self.c.btnsCb)
        rospy.Subscriber("tem_circulos", BoolStamped, self.c.temCirculoCb)
        rospy.Subscriber("coordenadas_circulos", Vector3Stamped,
                         self.c.coordenadasCirculoCb)
        rospy.Subscriber("distancia", SensoresDistanciaMsg, self.c.distanciaCb)
        rospy.Subscriber("centroid_rectangle", BoolStamped, self.c.retanguloCb)
Exemple #2
0
 def setUp(self):
     self.oControle= Controle()
     self.oProjetoControle= ProjetoControle()
     self.mokarTipoUsuario()
     self.mokarClasseUsuario()
     self.mokarPortfolio()
     self.mokarCriacaoDeUmUsuario()  
     self.mokarCriacaoDeProjeto()
     pass
Exemple #3
0
    def __init__(self, parent=None):
        super(Form, self).__init__(parent)
        self.setupUi(self)
        self.setWindowTitle(__appname__)
        self.dados = Controle()

        self.tableWidgetRegistros.setColumnWidth(1, 200)
        # Todos os eventos da interface grafica
        self.pushButtonAdicionarAluno.clicked.connect(self.adicionar_aluno)
        self.pushButtonRemoverAluno.clicked.connect(self.apagar_aluno)
        self.pushButtonEditarAluno.clicked.connect(self.editar_dados_aluno)
        self.pushButtonVerDados.clicked.connect(self.ver_dados_aluno)
        self.pushButtonProfAdicionar.clicked.connect(self.adicionar_professor)
        self.pushButtonProfRemover.clicked.connect(self.apagar_professor)
        self.pushButtonProfEditar.clicked.connect(self.editar_dados_professor)
        self.pushButtonProfVerDados.clicked.connect(self.ver_dados_professor)
        self.pushButtonAdicionarSala.clicked.connect(self.adicionar_sala)
        self.pushButtonAddProfSala.clicked.connect(self.associar_professor_sala)
        self.pushButtonAddAlunoSala.clicked.connect(self.associar_aluno_sala)
        self.listWidgetSalasCadastradas.itemClicked.connect(self.atualizar_dados_sala)
        self.comboBoxSalasRegistro.currentIndexChanged.connect(self.povoar_combobox_alunoRegistro)
        self.pushButton_Emprestar.clicked.connect(self.emprestar_chave)
        self.pushButton_Devolver.clicked.connect(self.devolver_chave)
Exemple #4
0
def main(stdscr):

    posicoes = [[' ', ' ', ' '], [' ', ' ', ' '], [' ', ' ', ' ']]

    controle = Controle(stdscr=stdscr)
    tela = Tela(stdscr=stdscr, posicoes=posicoes)
    jogadores = Jogadores(controle=controle, posicoes=posicoes)
    tela.reiniciar_tela()
    dado = Dado()

    jogador_x = 0
    jogador_o = 0

    while True:

        controle.espaco_do_tabuleiro()

        if jogadores.fim_de_partida is False:
            if controle.entrada == "\n":
                jogadores.jogar()

            if jogadores.fim_de_partida is True:
                ganhador = jogadores.vencedor
                if ganhador == "X":
                    jogador_x += 1
                if ganhador == "O":
                    jogador_o += 1

        if controle.entrada == "y":
            for i in range(3):
                for j in range(3):
                    posicoes[i][j] = " "

            controle.pos_y = 0
            controle.pos_x = 0
            jogadores.vencedor = None
            jogadores.fim_de_partida = False
            tela.reiniciar_tela()

        if controle.entrada == 'h':
            tela.ajuda()
        else:
            tela.tabuleiro(controle)
            tela.placar(jogador_x, jogador_o)
            if jogadores.fim_de_partida is True:
                tela.fim_de_jogo(jogadores.vencedor)
            controle.cursor()
Exemple #5
0
 def setUp(self):
     self.oControle= Controle()
     self.oCadastroControle= CadastroCadastroControle()
     self.mokarEstadoProjeto()
     self.mokarCriacaoDeTipoDeEvento()
     self.mokarValorProjeto()
     self.mokarTipoHabilidade()
     self.mokarHabilidades()
     self.mokarTipoUsuario()
     self.mokarClasseUsuario()
     self.mokarCriacaoDeUmUsuario()
     self.mokarCriacaoDeProjeto() 
     self.mokarCriacaoDeEventoDeHistorico() 
     self.mokarTipoDeMensagem()
     pass
Exemple #6
0
 def setUp(self):
     self.oCadastroControle= CadastroControle()
     self.oProjetoControle= ProjetoControle()
     self.oControle= Controle()
     self.mokarTipoUsuario()
     self.mokarClasseUsuario()
     self.mokarCriacaoDeUmUsuario() 
     self.mokarTipoHabilidade()
     self.mokarHabilidades() 
     self.mokarCriacaoDeProjeto() 
     self.mokarCriacaoDeTipoDeEvento()
     self.mokarCriacaoDeEventoDeHistorico()
     self.mokarProposta()
     self.mokarAssociandoHabilidadesAoProjeto()
     self.mokarAssociandoHabilidadesAoUsuario()
     pass
Exemple #7
0
 def setUp(self):
     self.oControle= Controle()
     self.oProjetoControle= ProjetoControle()
     self.oCadastroControle= CadastroCadastroControle()
     self.mokarEstadoProjeto()
     self.mokarCriacaoDeTipoDeEvento()
     self.mokarValorProjeto()
     self.mokarTipoHabilidade()
     self.mokarHabilidades()
     self.mokarTipoUsuario()
     self.mokarClasseUsuario()
     self.mokarCriacaoDeUmUsuario()
     self.mokarCriacaoDeProjeto() 
     self.mokarCriacaoDeEventoDeHistorico()
     self.mokarCriandoTipoDeEvento() 
     self.mokarCriandoEventoDeHistorico()
     self.mokarCriandoProposta()
     self.mokarSalvandoProposta()
     self.mokarDefinindoPropostaVencedora()
     self.mokarTipoDePagamento()
     self.mokarEstadoDoPagamento()
     self.mokarTipoDePromocao()
     pass
Exemple #8
0
class Test(TestCase):


    def setUp(self):
        self.oControle= Controle()
        self.oProjetoControle= ProjetoControle()
        self.oCadastroControle= CadastroCadastroControle()
        self.mokarEstadoProjeto()
        self.mokarCriacaoDeTipoDeEvento()
        self.mokarValorProjeto()
        self.mokarTipoHabilidade()
        self.mokarHabilidades()
        self.mokarTipoUsuario()
        self.mokarClasseUsuario()
        self.mokarCriacaoDeUmUsuario()
        self.mokarCriacaoDeProjeto() 
        self.mokarCriacaoDeEventoDeHistorico()
        self.mokarCriandoTipoDeEvento() 
        self.mokarCriandoEventoDeHistorico()
        self.mokarCriandoProposta()
        self.mokarSalvandoProposta()
        self.mokarDefinindoPropostaVencedora()
        self.mokarTipoDePagamento()
        self.mokarEstadoDoPagamento()
        self.mokarTipoDePromocao()
        pass


    def tearDown(self):
        pass
    
    def testCriandoPagamento(self):
        iIDProjeto= 1
        iTipo1= constantes.cntTipoPagamento_CreditoOfertante
        self.oControle.criaPagamento(iIDProjeto, iTipo1)
        
        iTipo2= constantes.cntTipoPagamento_DebitoFreelancer
        iPagamento2= Pagamentos()
        iPagamento2.id_projeto= Projetos.objects.filter(id_projeto= iIDProjeto)[0]
        iPagamento2.id_estado_pagamento= Estado_do_Pagamento.objects.filter(id_estado= 2)[0]
        iPagamento2.id_tipo_pagamento= Tipo_de_Pagamento.objects.filter(id_tipo= iTipo2)[0]
        iPagamento2.id_usuario= Usuario.objects.all()[0]
        iPagamento2.valor= 850.00
        iPagamento2.desconto= 0.00
        iPagamento2.data= datetime.datetime.today()
        iPagamento2.save()
        
        self.assertEquals(iIDProjeto, Pagamentos.objects.filter(id_projeto= iIDProjeto)[0].id_projeto.id_projeto)
        self.assertEquals(iIDProjeto, Pagamentos.objects.filter(id_projeto= iIDProjeto)[1].id_projeto.id_projeto)
        
    def testObtendoPagamentoAuxiliar(self):
        self.testCriandoPagamento()
        iIDProjeto= 1
        iPagamentoAuxiliarFreelancer= self.oControle.obtemPagamentoAuxiliar(iIDProjeto, constantes.cntTipoPagamento_DebitoFreelancer)
        iPagamentoAuxiliarOfertante= self.oControle.obtemPagamentoAuxiliar(iIDProjeto, constantes.cntTipoPagamento_CreditoOfertante)
        
        self.assertEquals(iIDProjeto, iPagamentoAuxiliarFreelancer.id_projeto)
        self.assertEquals(iIDProjeto, iPagamentoAuxiliarOfertante.id_projeto)
    
    def testCriandoPromocao(self):
        iTipoPromocao= Tipo_de_Promocao.objects.filter(id_tipo= constantes.cntTipoPromocao_Ofertante)[0]
        iPromocao1= Promocoes()
        iPromocao1.id_promocao= 1
        iPromocao1.id_tipo_promocao= iTipoPromocao
        iPromocao1.descricacao= 'Teste de Promocao Vigente'
        iPromocao1.porcentagem= 0.05
        iPromocao1.data_inicio= datetime.datetime.today()
        iPromocao1.data_fim= datetime.datetime.today() + datetime.timedelta(days= 10)
        iPromocao1.save()
        
        iPromocao2= Promocoes()
        iPromocao2.id_promocao= 2
        iPromocao2.id_tipo_promocao= iTipoPromocao
        iPromocao2.descricacao= 'Teste de Promocao Vencida'
        iPromocao2.porcentagem= 0.05
        iPromocao2.data_inicio= datetime.datetime.today() - datetime.timedelta(days= 5)
        iPromocao2.data_fim= datetime.datetime.today() - datetime.timedelta(days= 10)
        iPromocao2.save()
        
        self.assertEqual(2, Promocoes.objects.count())
    
    def testObtendoPromocoes(self):
        self.testCriandoPromocao()
        iPromocoes= self.oControle.obtemPromocoes(constantes.cntTipoPromocao_Ofertante)
        
        self.assertEquals(1, len(iPromocoes))
        
    def testObtendoValorDeDesconto(self):
        self.testCriandoPromocao()
        iPromocoes= self.oControle.obtemPromocoes(constantes.cntTipoPromocao_Ofertante)
        iValorProjeto= 1000.00
        iValorDesconto= self.oControle.calculaValorDoDesconto(iPromocoes, iValorProjeto)

        self.assertEquals(50.00, iValorDesconto)
    
    def testCalculandoValorDoProjeto(self):
        self.testCriandoPromocao()
        iProjeto= Projetos.objects.filter(id_projeto= 1)[0]
        iValorOfertante= self.oControle.calculaValorDoProjeto(iProjeto, constantes.cntTipoPagamento_CreditoOfertante)
        iValorFreelancer= self.oControle.calculaValorDoProjeto(iProjeto, constantes.cntTipoPagamento_DebitoFreelancer)
        
        self.assertEquals(1000.00, iValorOfertante)
        self.assertEquals(900.00, iValorFreelancer)
    
    def testObtendoPagamentosRealizados(self):
        self.testCriandoPagamento()
        iUsuario= Usuario.objects.all()[0]
        iTipoPagamento= constantes.cntTipoPagamento_CreditoOfertante
        iPagamentos= self.oControle.obtemPagamentos(iTipoPagamento, iUsuario.id)
        
        self.assertEquals(1, len(iPagamentos))
        self.assertEquals('1050.00', iPagamentos[0].pagamento_valor)
    
    def testObtendoPagamentosRecebidos(self):
        self.testCriandoPagamento()
        iUsuario= Usuario.objects.all()[0]
        iTipoPagamento= constantes.cntTipoPagamento_DebitoFreelancer
        iPagamentos= self.oControle.obtemPagamentos(iTipoPagamento, iUsuario.id)
        
        self.assertEquals(1, len(iPagamentos))
        self.assertEquals('900.00', iPagamentos[0].pagamento_valor)
        
#--------------------------------------------MOKS-------------------------------------------- 

    def mokarTipoUsuario(self):
        iDescricao= 'Freelancer'
        
        iTipoUsuario1= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario1.save()
        
        iDescricao= 'Ofertante'
        
        iTipoUsuario2= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario2.save()
        
        iDescricao= 'Ambos'
        
        iTipoUsuario3= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario3.save()
        
    
    def mokarClasseUsuario(self):
        iDescricao= 'Padrao'
        
        iClasseUsuario1= Classe_de_Usuario(descricao= iDescricao)
        
        iClasseUsuario1.save()
    
    def mokarTipoDePromocao(self):
        iIDTipo= 1
        iDescricao= 'Freelancer'
        
        iTipoPromocao1= Tipo_de_Promocao(id_tipo= iIDTipo, descricao= iDescricao)
        iTipoPromocao1.save()
        
        iIDTipo= 2
        iDescricao= 'Ofertante'
        
        iTipoPromocao2= Tipo_de_Promocao(id_tipo= iIDTipo, descricao= iDescricao)
        iTipoPromocao2.save()
    
    def mokarTipoDePagamento(self):
        iIDTipo= 1
        iDescricao= 'Debito - Freelancer'
        
        iTipoPagamento1= Tipo_de_Pagamento(id_tipo= iIDTipo, descricao= iDescricao)
        iTipoPagamento1.save()
        
        iIDTipo= 2
        iDescricao= 'Credito - Ofertante'
        
        iTipoPagamento2= Tipo_de_Pagamento(id_tipo= iIDTipo, descricao= iDescricao)
        iTipoPagamento2.save()
    
    def mokarEstadoDoPagamento(self):
        iIDEstado= 1
        iDescricao= 'Pendente'
        
        iEstadoPagamento1= Estado_do_Pagamento(id_estado= iIDEstado, descricao= iDescricao)
        iEstadoPagamento1.save()
        
        iIDEstado= 2
        iDescricao= 'Em Analise'
        
        iEstadoPagamento2= Estado_do_Pagamento(id_estado= iIDEstado, descricao= iDescricao)
        iEstadoPagamento2.save()
        
        iIDEstado= 3
        iDescricao= 'Aprovado'
        
        iEstadoPagamento3= Estado_do_Pagamento(id_estado= iIDEstado, descricao= iDescricao)
        iEstadoPagamento3.save()
        
        iIDEstado= 4
        iDescricao= 'Reprovado'
        
        iEstadoPagamento4= Estado_do_Pagamento(id_estado= iIDEstado, descricao= iDescricao)
        iEstadoPagamento4.save()

    def mokarCriandoTipoDeEvento(self):
        iIDTipo= 1
        iDescricao= 'Evento Teste'
        
        iTipoEvento= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento.save()
        
        self.assertEquals(iTipoEvento.id_tipo_evento, (Tipo_de_Evento.objects.filter(id_tipo_evento= iIDTipo)[0]).id_tipo_evento)
        
    def mokarCriandoEventoDeHistorico(self):
        iProjeto= Projetos.objects.all()[0]
        iIDEvento= 1
        iData= str(datetime.datetime.today())[:19]
        
        iEvento= self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto, iIDEvento, iData)
        
        self.assertEquals(iEvento.id_projeto, (Historico_Projeto_Eventos.objects.filter(id_tipo_evento= iIDEvento)[0]).id_projeto)
    
    def mokarCriandoProposta(self):
        iProjeto= Projetos.objects.all()[0]
        iUsuario= Usuario.objects.all()[0]
        
        iValor= 1000.00
        iDiasEntrega= 20
        iDescricao= 'Descricao da proposta'
        iData= str(datetime.datetime.today())[:19]
        
        iProposta= Propostas(id_projeto= iProjeto, id_usuario= iUsuario, valor= iValor,
                             dias_entrega= iDiasEntrega, descricao= iDescricao, data= iData)
        
        iProposta.save()
        
        self.assertEquals(iProposta, (Propostas.objects.filter(id_projeto= iProjeto.id_projeto)[0]))
    
    def mokarSalvandoProposta(self):
        iValor= 1000.00
        iDiasEntrega= 20
        iDescricao= 'Descricao da proposta'
        
        iIDProjeto= 1
        iUsuario= Usuario.objects.all()[0]
        
        iProposta= Propostas(valor= iValor,dias_entrega= iDiasEntrega, descricao= iDescricao)
        
        self.oProjetoControle.salvaProposta(iIDProjeto, iUsuario, iProposta)
        
        self.assertEquals(iIDProjeto, (Propostas.objects.filter(id_projeto= iIDProjeto)[0]).id_projeto.id_projeto)
        self.assertEquals(True, (Projetos.objects.filter(id_projeto= iIDProjeto)[0]).tem_proposta)
    
    def mokarDefinindoPropostaVencedora(self):
        iIDProposta= 1
        
        self.oProjetoControle.definePropostaVencedora(iIDProposta)
        iProjeto= (Propostas.objects.filter(id_proposta= iIDProposta)[0]).id_projeto
            
    def mokarObtendoPropostaVencedora(self):
        self.mokarSalvandoProposta()
        self.mokarDefinindoPropostaVencedora()
        iIDProjeto= 1
        
        iProposta= self.oProjetoControle.obtemPropostaVencedora(iIDProjeto)
        
    def mokarObtendoNomeFreelancerVencedor(self): 
        self.mokarDefinindoPropostaVencedora()
        iIDProjeto1= 1
        iIDProjeto2= 2
        
        iNome1= self.oProjetoControle.obtemNomeFreelancerVencedor(iIDProjeto1)
        iNome2= self.oProjetoControle.obtemNomeFreelancerVencedor(iIDProjeto2)
        
    
    def mokarCriacaoDeUmUsuario(self):
        iEmailUsuario1= '*****@*****.**'
        iSenhaUsuario1= 'teste'
        iTipoUsuario1= Tipo_de_Usuario.objects.filter(id_tipo_usuario= constantes.cntTipoUsuarioFreelancer)[0]
        iClasseUsuario1= Classe_de_Usuario.objects.filter(id_classe_usuario= constantes.cntClasseUsuarioPadrao)[0]
        iRecebeEmail1= True
        iNome= 'Nome'
        iSobrenome= 'Sobrenome'
        iUsuario1= Usuario(email=iEmailUsuario1, password=iSenhaUsuario1, tipo_usuario= iTipoUsuario1, 
                           receber_email= iRecebeEmail1, first_name= iNome, last_name= iSobrenome,
                           classe_usuario= iClasseUsuario1)
        iUsuario1.save()
        
        iDDD= '48'
        iTelefone= '22223333'
        iCEP= '88000230'
        iRua= 'Rua das Margaridas Amarelas Semi-Floridas'
        iNumero= '2000'
        iComplemento= 'Cogumelo 1'
        iBairro= 'Floresta de Antena'
        iCidade= 'Cidade'
        iUF= 'SC'
        iPais= 'Pais'
        
        iUsuario= Usuario.objects.all()[0]
        
        iEndereco= Endereco()
        iEndereco.ddd= iDDD
        iEndereco.telefone= iTelefone
        iEndereco.cep= iCEP
        iEndereco.rua= iRua
        iEndereco.numero= iNumero
        iEndereco.complemento= iComplemento
        iEndereco.bairro= iBairro
        iEndereco.cidade= iCidade
        iEndereco.uf= iUF
        iEndereco.pais= iPais   
        
        self.oCadastroControle.salvaEnderecoDoUsuario(iEndereco, iUsuario) 
            
        return iUsuario1
        
    def mokarCriacaoDeProjeto(self):
        iNome= 'Projeto teste'
        iProprietario= Usuario.objects.all()[0]
        iCategoria= Tipo_de_Habilidade.objects.all()[0]
        iValor= Valor_do_Projeto.objects.all()[0]
        iEstado= Estado_do_Projeto.objects.all()[0]
        iDescricacao= 'Teste de descricacao'
        iDuracao= 20
        iTemAnexo= False
        
        
        iProjeto= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        
        iProjeto.save()
        
        iNome2= 'Projeto teste'
        iProprietario2= Usuario.objects.all()[0]
        iCategoria2= Tipo_de_Habilidade.objects.all()[0]
        iValor2= Valor_do_Projeto.objects.all()[0]
        iEstado2= Estado_do_Projeto.objects.all()[0]
        iDescricacao2= 'Teste de descricacao'
        iDuracao2= 20
        iTemAnexo2= False
        
        
        iProjeto2= Projetos(id_proprietario= iProprietario2, id_categoria= iCategoria2, id_valor= iValor2,
                           id_estado= iEstado2, nome= iNome2, descricao= iDescricacao2, duracao= iDuracao2, 
                           tem_anexo= iTemAnexo2)
        
        iProjeto2.save()
        
    def mokarAssociandoHabilidadesAoUsuario(self):
        iListaDeHabilidades= [1001, 1002, 1003]
        
        iUsuario= Usuario.objects.all()[0]
        
        self.oCadastroControle.salvaHabilidadesDoUsuario(iListaDeHabilidades, iUsuario)
        
    def mokarAssociandoHabilidadesAoProjeto(self):
        iListaDeHabilidades= [1001, 1002, 1003]
        
        iProjeto= Projetos.objects.filter(id_projeto= 1)[0]
        
        self.oCadastroControle.salvaHabilidadesDoProjeto(iListaDeHabilidades, iProjeto)
        
    def mokarHabilidades(self):
        iDescricao1= 'Django'
        iID1= 1001
        
        iDescricao2= 'Rails'
        iID2= 1002
        
        iDescricao3= 'Zend'
        iID3= 1003
        
        iTipoHabilidade= Tipo_de_Habilidade.objects.all()[0]
        
        iHabilidade1= Habilidades(id_habilidade= iID1, descricao= iDescricao1, id_tipo= iTipoHabilidade)    
        iHabilidade2= Habilidades(id_habilidade= iID2, descricao= iDescricao2, id_tipo= iTipoHabilidade) 
        iHabilidade3= Habilidades(id_habilidade= iID3, descricao= iDescricao3, id_tipo= iTipoHabilidade) 
        
        iHabilidade1.save()
        iHabilidade2.save()
        iHabilidade3.save()
        
        return True
    
    def mokarTipoHabilidade(self):
        iDescricao= 'Habilidade Teste'
        
        iTipoHabilidade= Tipo_de_Habilidade(descricao= iDescricao)
        
        iTipoHabilidade.save()
        
    def mokarValorProjeto(self):
        iDescricao= 'Valor Teste'
        
        iValorProjeto= Valor_do_Projeto(descricao= iDescricao)
        
        iValorProjeto.save()
        
    def mokarEstadoProjeto(self):
        iDescricao1= 'Novo'
        
        iEstadoProjeto1= Estado_do_Projeto(descricao= iDescricao1)
        
        iEstadoProjeto1.save()
        
        iDescricao2= 'Publicacao'
        
        iEstadoProjeto2= Estado_do_Projeto(descricao= iDescricao2)
        
        iEstadoProjeto2.save()
        
        iDescricao7= 'Pre-Desenvolvimento'
        
        iEstadoProjeto7= Estado_do_Projeto(descricao= iDescricao7)
        
        iEstadoProjeto7.save()
        
        iDescricao3= 'Desenvolvimento'
        
        iEstadoProjeto3= Estado_do_Projeto(descricao= iDescricao3)
        
        iEstadoProjeto3.save()
        
        iDescricao4= 'Analise'
        
        iEstadoProjeto4= Estado_do_Projeto(descricao= iDescricao4)
        
        iEstadoProjeto4.save()
        
        iDescricao5= 'Inativo'
        
        iEstadoProjeto5= Estado_do_Projeto(descricao= iDescricao5)
        
        iEstadoProjeto5.save()
        
        iDescricao6= 'Concluido'
        
        iEstadoProjeto6= Estado_do_Projeto(descricao= iDescricao6)
        
        iEstadoProjeto6.save()
        
    
    def mokarCriacaoDeTipoDeEvento(self):
        iIDTipo= 1
        iDescricao= 'Criado'
        
        iTipoEvento1= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento1.save()
        
        iIDTipo= 2
        iDescricao= 'Publicado'
        
        iTipoEvento2= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento2.save()
        
        iIDTipo= 3
        iDescricao= 'FimPublicacao'
        
        iTipoEvento3= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento3.save()
        
        iIDTipo= 4
        iDescricao= 'Selecionar Ganhador'
        
        iTipoEvento4= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento4.save()
        
        iIDTipo= 5
        iDescricao= 'Inicio Dev'
        
        iTipoEvento5= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento5.save()
        
        iIDTipo= 6
        iDescricao= 'Fim Dev Previsto'
        
        iTipoEvento6= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento6.save()
        
        iIDTipo= 7
        iDescricao= 'Fim Dev Real'
        
        iTipoEvento7= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento7.save()
        
        iIDTipo= 8
        iDescricao= 'Inicio Revisao'
        
        iTipoEvento8= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento8.save()
        
        iIDTipo= 9
        iDescricao= 'Fim Revisao'
        
        iTipoEvento9= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento9.save()
        
        iIDTipo= 10
        iDescricao= 'Pagamento Ofertante'
        
        iTipoEvento10= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento10.save()
        
        iIDTipo= 10
        iDescricao= 'Pagamento Freelancer'
        
        iTipoEvento11= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento11.save()
    
    def mokarCriacaoDeEventoDeHistorico(self, vData=None):
        if vData == None:
            iData= str(datetime.datetime.today())[:19]
        else:
            iData= vData
        
        iDataFim= datetime.datetime.today() + datetime.timedelta(days= 10)
        
        
        iProjeto1 = Projetos.objects.filter(id_projeto= 1)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
        
        iProjeto2 = Projetos.objects.filter(id_projeto= 2)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
Exemple #9
0
class Test(TestCase):


    def setUp(self):
        self.oControle= Controle()
        self.oCadastroControle= CadastroCadastroControle()
        self.mokarEstadoProjeto()
        self.mokarCriacaoDeTipoDeEvento()
        self.mokarValorProjeto()
        self.mokarTipoHabilidade()
        self.mokarHabilidades()
        self.mokarTipoUsuario()
        self.mokarClasseUsuario()
        self.mokarCriacaoDeUmUsuario()
        self.mokarCriacaoDeProjeto() 
        self.mokarCriacaoDeEventoDeHistorico() 
        self.mokarTipoDeMensagem()
        pass


    def tearDown(self):
        pass
    
    def testCriandoTipoDeEvento(self):
        iIDTipo= 1
        iDescricao= 'Evento Teste'
        
        iTipoEvento= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento.save()
        
        self.assertEquals(iTipoEvento.id_tipo_evento, (Tipo_de_Evento.objects.filter(id_tipo_evento= iIDTipo)[0]).id_tipo_evento)
        
    def testCriandoEventoDeHistorico(self):
        self.testCriandoTipoDeEvento()
        
        iProjeto= Projetos.objects.all()[0]
        iIDEvento= 1
        iData= str(datetime.datetime.today())[:19]
        
        iEvento= self.oControle.salvaHistoricoDoProjeto(iProjeto, iIDEvento, iData)
        
        self.assertEquals(iEvento.id_projeto, (Historico_Projeto_Eventos.objects.filter(id_tipo_evento= iIDEvento)[0]).id_projeto)
    
    def testCriandoProposta(self):
        iProjeto= Projetos.objects.all()[0]
        iUsuario= Usuario.objects.all()[0]
        
        iValor= 100.00
        iDiasEntrega= 20
        iDescricao= 'Descricao da proposta'
        iData= str(datetime.datetime.today())[:19]
        
        iProposta= Propostas(id_projeto= iProjeto, id_usuario= iUsuario, valor= iValor,
                             dias_entrega= iDiasEntrega, descricao= iDescricao, data= iData)
        
        iProposta.save()
        
        self.assertEquals(iProposta, (Propostas.objects.filter(id_projeto= iProjeto.id_projeto)[0]))
    
    def testSalvandoProposta(self):
        iValor= 100.00
        iDiasEntrega= 20
        iDescricao= 'Descricao da proposta'
        
        iIDProjeto= 1
        iUsuario= Usuario.objects.all()[0]
        
        iProposta= Propostas(valor= iValor,dias_entrega= iDiasEntrega, descricao= iDescricao)
        
        self.oControle.salvaProposta(iIDProjeto, iUsuario, iProposta)
        
        self.assertEquals(iIDProjeto, (Propostas.objects.filter(id_projeto= iIDProjeto)[0]).id_projeto.id_projeto)
        self.assertEquals(True, (Projetos.objects.filter(id_projeto= iIDProjeto)[0]).tem_proposta)
    
    def testDefinindoPropostaVencedora(self):
        self.testSalvandoProposta()
        iIDProposta= 1
        
        self.oControle.definePropostaVencedora(iIDProposta)
        iProjeto= (Propostas.objects.filter(id_proposta= iIDProposta)[0]).id_projeto
        
        self.assertEquals(True, (Propostas.objects.filter(id_proposta= iIDProposta)[0]).eh_vencedor)
        self.assertEquals(constantes.cntEstadoProjeto_AguardandoCredito, iProjeto.id_estado.id_estado)
    
    def testObtendoPropostaVencedora(self):
        self.testSalvandoProposta()
        self.testDefinindoPropostaVencedora()
        iIDProjeto= 1
        
        iProposta= self.oControle.obtemPropostaVencedora(iIDProjeto)
        
        self.assertEquals(iIDProjeto, iProposta.id_projeto.id_projeto)  
   
    def testObtendoNomeFreelancerVencedor(self): 
        self.testDefinindoPropostaVencedora()
        iIDProjeto1= 1
        iIDProjeto2= 2
        
        iNome1= self.oControle.obtemNomeFreelancerVencedor(iIDProjeto1)
        iNome2= self.oControle.obtemNomeFreelancerVencedor(iIDProjeto2)
        
        self.assertEquals('Nome S.', iNome1)
        self.assertEquals('Não publicado', iNome2)
    
    def testTransformandoMoedaParaString(self):
        iValor= 'R$2.000,00'
        
        self.assertEquals('2000.00', self.oControle.transformaMoedaEmString(iValor))
        
    def testVerificandoIntervaloDeValorDoProjeto(self):
        iIDProjeto= 1
        iValorProjeto_Simples_Ok= 200.00
        iValorProjeto_Simples_NotOk= 1000.00
        
        iIDValor_MuitoPequeno = constantes.cntValorDoProjeto_MuitoPequeno
        iValorProjeto_MuitoPequeno_Ok= 500.00
        iValorProjeto_MuitoPequeno_NotOk= 200.00
        
        iIDValor_Pequeno = constantes.cntValorDoProjeto_Pequeno
        iValorProjeto_Pequeno_Ok= 1000.50
        iValorProjeto_Pequeno_NotOk= 10.77
        
        iIDValor_Medio = constantes.cntValorDoProjeto_Medio
        iValorProjeto_Medio_Ok= 1768.98
        iValorProjeto_Medio_NotOk= 5000.00
        
        iIDValor_Grande = constantes.cntValorDoProjeto_Grande
        iValorProjeto_Grande_Ok= 3500.00
        iValorProjeto_Grande_NotOk= 1700.00
        
        iIDValor_MuitoGrande = constantes.cntValorDoProjeto_MuitoGrande
        iValorProjeto_MuitoGrande_Ok= 150000.00
        iValorProjeto_MuitoGrnade_NotOk= 4999.99
        
        self.assertEqual(True, self.oControle.verificaIntervaloDoValorDoProjeto(iValorProjeto_Simples_Ok, vIDProjeto= iIDProjeto))
        self.assertEqual(False, self.oControle.verificaIntervaloDoValorDoProjeto(iValorProjeto_Simples_NotOk, vIDProjeto= iIDProjeto))
        
        self.assertEqual(True, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_MuitoPequeno_Ok, vIDValor= iIDValor_MuitoPequeno))
        self.assertEqual(False, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_MuitoPequeno_NotOk, vIDValor= iIDValor_MuitoPequeno))
        
        self.assertEqual(True, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_Pequeno_Ok, vIDValor= iIDValor_Pequeno))
        self.assertEqual(False, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_Pequeno_NotOk, vIDValor= iIDValor_Pequeno))
        
        self.assertEqual(True, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_Medio_Ok, vIDValor= iIDValor_Medio))
        self.assertEqual(False, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_Medio_NotOk, vIDValor= iIDValor_Medio))
        
        self.assertEqual(True, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_Grande_Ok, vIDValor= iIDValor_Grande))
        self.assertEqual(False, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_Grande_NotOk, vIDValor= iIDValor_Grande))
        
        self.assertEqual(True, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_MuitoGrande_Ok, vIDValor= iIDValor_MuitoGrande))
        self.assertEqual(False, self.oControle.verificaIntervaloDoValorDoProjeto(vValor= iValorProjeto_MuitoGrnade_NotOk, vIDValor= iIDValor_MuitoGrande))
        
    def testTransformandoStringParaMoeda(self):
        iValor= '2000.00'
        
        self.assertEquals('R$ 2.000,00', self.oControle.transformaStringEmMoeda(iValor))
    
    def testCriandoMensagem(self):
        iDestinatario= Usuario.objects.all()[0]
        iRemetente= Usuario.objects.all()[0]
        iIDProjeto= 1
        
        iTipoMensagem= constantes.cntTipoMensagemRevisao
        iMensagem= 'Revisao'
        self.oControle.salvaMensagem(iTipoMensagem, iMensagem, vDestinatario= iDestinatario, vRemetente= iRemetente, vIDProjeto= iIDProjeto)

        iTipoMensagem= constantes.cntTipoMensagemProjeto
        iMensagem= 'Direta'
        self.oControle.salvaMensagem(iTipoMensagem, iMensagem, vDestinatario= iDestinatario, vRemetente= iRemetente, vIDProjeto= iIDProjeto)

        iTipoMensagem= constantes.cntTipoMensagemForum
        iMensagem= 'Forum'
        self.oControle.salvaMensagem(iTipoMensagem, iMensagem, vDestinatario= iDestinatario, vRemetente= iRemetente, vIDProjeto= iIDProjeto)

        iTipoMensagem= constantes.cntTipoMensagemFeedback
        iMensagem= 'Feedback'
        self.oControle.salvaMensagem(iTipoMensagem, iMensagem, vDestinatario= iDestinatario, vRemetente= iRemetente, vIDProjeto= iIDProjeto)

        self.assertEquals(1, Mensagens.objects.filter(id_tipo_mensagem= constantes.cntTipoMensagemRevisao).count())
        self.assertEquals(1, Mensagens.objects.filter(id_tipo_mensagem= constantes.cntTipoMensagemProjeto).count())
        self.assertEquals(1, Mensagens.objects.filter(id_tipo_mensagem= constantes.cntTipoMensagemForum).count())
        self.assertEquals(1, Mensagens.objects.filter(id_tipo_mensagem= constantes.cntTipoMensagemFeedback).count())
    
    def testCriandoMaisRevisoesDoQueOLimite(self):
        iDestinatario= Usuario.objects.all()[0]
        iRemetente= Usuario.objects.all()[0]
        
        iTipoMensagem= constantes.cntTipoMensagemRevisao
        iMensagem= 'Revisao'
        self.oControle.salvaMensagem(iTipoMensagem, iMensagem, vDestinatario= iDestinatario, vRemetente= iRemetente, vIDProjeto= 1)
        self.oControle.salvaMensagem(iTipoMensagem, iMensagem, vDestinatario= iDestinatario, vRemetente= iRemetente, vIDProjeto= 1)
        self.oControle.salvaMensagem(iTipoMensagem, iMensagem, vDestinatario= iDestinatario, vRemetente= iRemetente, vIDProjeto= 1)
        self.oControle.salvaMensagem(iTipoMensagem, iMensagem, vDestinatario= iDestinatario, vRemetente= iRemetente, vIDProjeto= 1)
        
        
        self.assertEquals(3, Revisao_Projeto.objects.count())
        
    def testbuscaObtemListaRemetente(self):
        self.testCriandoMensagem()
        iProjeto= Projetos.objects.filter(id_projeto=1)[0]
        iListaRemetentes= self.oControle.obtemListaIDUsuarioForumProposta(iProjeto)
        
        self.assertEquals(1, len(iListaRemetentes))
#--------------------------------------------MOKS--------------------------------------------    
    
    def mokarTipoDeMensagem(self):
        iDescricao= 'Revisao'
        iTipoDeMensagem= Tipo_de_Mensagem(1, iDescricao)
        iTipoDeMensagem.save()
        
        iDescricao= 'Direta'
        iTipoDeMensagem= Tipo_de_Mensagem(2, iDescricao)
        iTipoDeMensagem.save()
        
        iDescricao= 'Forum'
        iTipoDeMensagem= Tipo_de_Mensagem(3, iDescricao)
        iTipoDeMensagem.save()
        
        iDescricao= 'Feedback'
        iTipoDeMensagem= Tipo_de_Mensagem(4, iDescricao)
        iTipoDeMensagem.save()
    
    def mokarTipoUsuario(self):
        iDescricao= 'Freelancer'
        
        iTipoUsuario1= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario1.save()
        
        iDescricao= 'Ofertante'
        
        iTipoUsuario2= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario2.save()
        
        iDescricao= 'Ambos'
        
        iTipoUsuario3= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario3.save()
        
    
    def mokarClasseUsuario(self):
        iDescricao= 'Padrao'
        
        iClasseUsuario1= Classe_de_Usuario(descricao= iDescricao)
        
        iClasseUsuario1.save()
    
    def mokarCriacaoDeUmUsuario(self):
        iEmailUsuario1= '*****@*****.**'
        iSenhaUsuario1= 'teste'
        iTipoUsuario1= Tipo_de_Usuario.objects.filter(id_tipo_usuario= constantes.cntTipoUsuarioFreelancer)[0]
        iClasseUsuario1= Classe_de_Usuario.objects.filter(id_classe_usuario= constantes.cntClasseUsuarioPadrao)[0]
        iRecebeEmail1= True
        iNome= 'Nome'
        iSobrenome= 'Sobrenome'
        iEmpresa= 'Empresa XPTO'
        iUsuario1= Usuario(email=iEmailUsuario1, password=iSenhaUsuario1, tipo_usuario= iTipoUsuario1, 
                           receber_email= iRecebeEmail1, first_name= iNome, last_name= iSobrenome, 
                           empresa= iEmpresa, classe_usuario= iClasseUsuario1)
        iUsuario1.save()
            
        return iUsuario1
        
    def mokarCriacaoDeProjeto(self):
        iNome= 'Projeto teste'
        iProprietario= Usuario.objects.all()[0]
        iCategoria= Tipo_de_Habilidade.objects.all()[0]
        iValor= Valor_do_Projeto.objects.all()[0]
        iEstado= Estado_do_Projeto.objects.all()[0]
        iDescricacao= 'Teste de descricacao'
        iDuracao= 20
        iTemAnexo= False
        
        
        iProjeto= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        
        iProjeto.save()
        
        iNome2= 'Projeto teste'
        iProprietario2= Usuario.objects.all()[0]
        iCategoria2= Tipo_de_Habilidade.objects.all()[0]
        iValor2= Valor_do_Projeto.objects.all()[0]
        iEstado2= Estado_do_Projeto.objects.all()[0]
        iDescricacao2= 'Teste de descricacao'
        iDuracao2= 20
        iTemAnexo2= False
        
        
        iProjeto2= Projetos(id_proprietario= iProprietario2, id_categoria= iCategoria2, id_valor= iValor2,
                           id_estado= iEstado2, nome= iNome2, descricao= iDescricacao2, duracao= iDuracao2, 
                           tem_anexo= iTemAnexo2)
        
        iProjeto2.save()
        
    def mokarAssociandoHabilidadesAoUsuario(self):
        iListaDeHabilidades= [1001, 1002, 1003]
        
        iUsuario= Usuario.objects.all()[0]
        
        self.oCadastroControle.salvaHabilidadesDoUsuario(iListaDeHabilidades, iUsuario)
        
        self.assertEqual(iUsuario.username, (Habilidades_Usuario.objects.filter(id_habilidade= 1001)[0]).id_usuario.username)
        self.assertEqual(iUsuario.username, (Habilidades_Usuario.objects.filter(id_habilidade= 1002)[0]).id_usuario.username)

    def mokarAssociandoHabilidadesAoProjeto(self):
        iListaDeHabilidades= [1001, 1002, 1003]
        
        iProjeto= Projetos.objects.all()[0]
        
        self.oCadastroControle.salvaHabilidadesDoProjeto(iListaDeHabilidades, iProjeto)
        
        self.assertEqual(iProjeto.id_projeto, (Projeto_Habilidades.objects.filter(id_habilidade= 1001)[0]).id_projeto.id_projeto)
       
    def mokarHabilidades(self):
        iDescricao1= 'Django'
        iID1= 1001
        
        iDescricao2= 'Rails'
        iID2= 1002
        
        iDescricao3= 'Zend'
        iID3= 1003
        
        iTipoHabilidade= Tipo_de_Habilidade.objects.all()[0]
        
        iHabilidade1= Habilidades(id_habilidade= iID1, descricao= iDescricao1, id_tipo= iTipoHabilidade)    
        iHabilidade2= Habilidades(id_habilidade= iID2, descricao= iDescricao2, id_tipo= iTipoHabilidade) 
        iHabilidade3= Habilidades(id_habilidade= iID3, descricao= iDescricao3, id_tipo= iTipoHabilidade) 
        
        iHabilidade1.save()
        iHabilidade2.save()
        iHabilidade3.save()
        
        return True
    
    def mokarTipoHabilidade(self):
        iDescricao= 'Habilidade Teste'
        
        iTipoHabilidade= Tipo_de_Habilidade(descricao= iDescricao)
        
        iTipoHabilidade.save()
        
    def mokarValorProjeto(self):
        iDescricao= 'Valor Teste'
        
        iValorProjeto= Valor_do_Projeto(descricao= iDescricao)
        
        iValorProjeto.save()
        
    def mokarEstadoProjeto(self):
        iDescricao1= 'Novo'
        
        iEstadoProjeto1= Estado_do_Projeto(descricao= iDescricao1)
        
        iEstadoProjeto1.save()
        
        iDescricao2= 'Publicacao'
        
        iEstadoProjeto2= Estado_do_Projeto(descricao= iDescricao2)
        
        iEstadoProjeto2.save()
        
        iDescricao3= 'Desenvolvimento'
        
        iEstadoProjeto3= Estado_do_Projeto(descricao= iDescricao3)
        
        iEstadoProjeto3.save()
        
        iDescricao4= 'Analise'
        
        iEstadoProjeto4= Estado_do_Projeto(descricao= iDescricao4)
        
        iEstadoProjeto4.save()
        
        iDescricao5= 'Inativo'
        
        iEstadoProjeto5= Estado_do_Projeto(descricao= iDescricao5)
        
        iEstadoProjeto5.save()
        
        iDescricao6= 'Concluido'
        
        iEstadoProjeto6= Estado_do_Projeto(descricao= iDescricao6)
        
        iEstadoProjeto6.save()
        
        iDescricao7= 'Pre-Desenvolvimento'
        
        iEstadoProjeto7= Estado_do_Projeto(descricao= iDescricao7)
        
        iEstadoProjeto7.save()
    
    def mokarCriacaoDeTipoDeEvento(self):
        iIDTipo= 1
        iDescricao= 'Criado'
        
        iTipoEvento1= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento1.save()
        
        iIDTipo= 2
        iDescricao= 'Publicado'
        
        iTipoEvento2= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento2.save()
        
        iIDTipo= 3
        iDescricao= 'FimPublicacao'
        
        iTipoEvento3= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento3.save()
        
        iIDTipo= 4
        iDescricao= 'Selecionar Ganhador'
        
        iTipoEvento4= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento4.save()
        
        iIDTipo= 5
        iDescricao= 'Inicio Dev'
        
        iTipoEvento5= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento5.save()
        
        iIDTipo= 6
        iDescricao= 'Fim Dev Previsto'
        
        iTipoEvento6= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento6.save()
        
        iIDTipo= 7
        iDescricao= 'Fim Dev Real'
        
        iTipoEvento7= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento7.save()
        
        iIDTipo= 8
        iDescricao= 'Inicio Revisao'
        
        iTipoEvento8= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento8.save()
        
        iIDTipo= 9
        iDescricao= 'Fim Revisao'
        
        iTipoEvento9= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento9.save()
        
        iIDTipo= 10
        iDescricao= 'Pagamento Ofertante'
        
        iTipoEvento10= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento10.save()
        
        iIDTipo= 10
        iDescricao= 'Pagamento Freelancer'
        
        iTipoEvento11= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento11.save()
    
    def mokarCriacaoDeEventoDeHistorico(self, vData=None):
        if vData == None:
            iData= str(datetime.datetime.today())[:19]
        else:
            iData= vData
        
        iDataFim= datetime.datetime.today() + datetime.timedelta(days= 10)
        
        
        iProjeto1 = Projetos.objects.filter(id_projeto= 1)[0]
        self.oControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_Criacao, iData)
        self.oControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_Publicacao, iData)
        self.oControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
        
        iProjeto2 = Projetos.objects.filter(id_projeto= 2)[0]
        self.oControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_Criacao, iData)
        self.oControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_Publicacao, iData)
        self.oControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
Exemple #10
0
class Test(TestCase):


    def setUp(self):
        self.oCadastroControle= CadastroControle()
        self.oProjetoControle= ProjetoControle()
        self.oControle= Controle()
        self.mokarTipoUsuario()
        self.mokarClasseUsuario()
        self.mokarCriacaoDeUmUsuario() 
        self.mokarTipoHabilidade()
        self.mokarHabilidades() 
        self.mokarCriacaoDeProjeto() 
        self.mokarCriacaoDeTipoDeEvento()
        self.mokarCriacaoDeEventoDeHistorico()
        self.mokarProposta()
        self.mokarAssociandoHabilidadesAoProjeto()
        self.mokarAssociandoHabilidadesAoUsuario()
        pass


    def tearDown(self):
        Tipo_de_Habilidade.objects.all().delete()
        Usuario.objects.all().delete()
        Estado_do_Projeto.objects.all().delete()
        Projetos.objects.all().delete()
        Valor_do_Projeto.objects.all().delete()
        pass

    def testBuscarProjetos_Ultimos(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Ultimos)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 8)[0]).id_projeto)
    
    def testBuscarProjetos_CategoriaDesenvolvimento(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Categoria_Desenvolvimento)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 1)[0]).id_projeto)
        
    def testBuscarProjetos_CategoriaSO(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Categoria_SO)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 2)[0]).id_projeto)
        
    def testBuscarProjetos_CategoriaSoftware(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Categoria_Softwares)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 3)[0]).id_projeto)
        
    def testBuscarProjetos_CategoriaInfra(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Categoria_Infra)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 4)[0]).id_projeto)
        
    def testBuscarProjetos_CategoriaDados(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Categoria_Dados)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 5)[0]).id_projeto)
        
    def testBuscarProjetos_CategoriaMobile(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Categoria_Mobile)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 6)[0]).id_projeto)
        
    def testBuscarProjetos_CategoriaMidiasSociais(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Categoria_MidiasSociais)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 7)[0]).id_projeto)
        
    def testBuscarProjetos_CategoriaOutras(self):
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Categoria_Outras)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 8)[0]).id_projeto)
    
    def testBuscarPropostasDoFreelancer(self):
        iFreelancer= Usuario.objects.all()[0]
        iListaProjetos= self.oControle.buscarPropostasDoFreelancer(iFreelancer)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 1)[0]).id_projeto)
    
    def testBuscarProjetosDoOfertante(self):
        iOfertante= Usuario.objects.all()[0]
        iListaProjetos= self.oControle.buscarProjetosDoOfertante(iOfertante)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 8)[0]).id_projeto)
    
    def testBuscarProjeto(self):
        iIDProjeto= 1
        
        iProjeto= self.oControle.buscaProjeto(iIDProjeto)
        
        self.assertEquals(iProjeto.id, iIDProjeto)
    
    def testBuscarProjetosPorPerfil(self):
        iUsuario= Usuario.objects.all()[0]
        iListaProjetos= self.oControle.buscarProjetos(constantes.cntBuscaProjetos_Perfil, iUsuario.id)
        self.assertEquals(iListaProjetos[0].id, (Projetos.objects.filter(id_projeto= 8)[0]).id_projeto)
    
    def testBuscarUsuariosPorPerfil(self):
        iIDProjeto= 2
        iListaUsuarios= self.oControle.buscarUsuariosPorPerfil(iIDProjeto)
        self.assertEquals(iListaUsuarios[0].id, (Usuario.objects.all()[0]).id)
        
    def testObtendoPropostasDoProjeto(self):
        iIDProjeto= 1
        
        iListaProposta= self.oControle.buscaPropostas(iIDProjeto)
        
        self.assertEquals(iListaProposta[0].id, (Propostas.objects.filter(id_projeto= iIDProjeto)[0]).id_proposta)
    
    def testBuscarProjetosNovos(self):
        iDiasAtras= 0
        iListaProjetos= self.oControle.buscaProjetosRecentes(iDiasAtras)
        
        self.assertEquals(len(iListaProjetos), (len(Projetos.objects.all())))
    
    def testBuscarProposta(self):
        iIDProjeto= 1
        iUsuario= Usuario.objects.all()[0]
        
        iProposta= self.oControle.buscaProposta(iIDProjeto, iUsuario)
        
        self.assertEquals(iProposta.id_projeto.id_projeto, iIDProjeto)
    
    def testBuscarUltimosFreelancers(self):
        self.mokarCriacaoDeDoisUsuarios()
        iFreelancers= Usuario.objects.all().order_by('id')
        iHabilidades= ['1001', '1002']
        iUltimosFreelancers= self.oControle.buscaFreelancers(constantes.cntBuscaFreelancers_Ultimos, iHabilidades)
        
        self.assertEquals(iFreelancers[0].id, iUltimosFreelancers[0].id)
        self.assertEquals(1, len(iUltimosFreelancers))
    
    def testBuscarFreelancersPorPontuacao(self):
        self.mokarCriacaoDeDoisUsuarios()
        iFreelancers= Usuario.objects.all().order_by('id')
        iHabilidades= ['1001', '1002']
        iFreelancersFiltrados= self.oControle.buscaFreelancers(constantes.cntBuscaFreelancers_Pontuacao, iHabilidades)
        
        self.assertEquals(iFreelancers[0].id, iFreelancersFiltrados[0].id)
        self.assertEquals(1, len(iFreelancersFiltrados))
    
    def testDiasRestantes(self):
        iDataInicio_dias= datetime.datetime(2012, 02, 15, 15, 10, 45)
        iDataInicio_horas= datetime.datetime(2012, 02, 24, 20, 10, 45)
        iDataInicio_minutos= datetime.datetime(2012, 02, 25, 14, 20, 45)
        iDataFim= datetime.datetime(2012, 02, 25, 15, 10, 45)
                
        self.assertEquals('10 dia(s)', self.oControle.calculaDiasRestantes(None, iDataInicio_dias, iDataFim))
        self.assertEquals('19 hora(s)', self.oControle.calculaDiasRestantes(None, iDataInicio_horas, iDataFim))
        self.assertEquals('50 minuto(s)', self.oControle.calculaDiasRestantes(None, iDataInicio_minutos, iDataFim))
    
    def testCalculandoNumeroDePropostas(self):
        iProjeto= Projetos.objects.filter(id_projeto= 1)[0]
        
        iNumeroPropostas= self.oControle.calculaNumeroDePropostas(iProjeto)
        
        self.assertEquals(1, iNumeroPropostas)
        
    def testCalculandoValorMedioDasPropostas(self):
        iProjeto= Projetos.objects.filter(id_projeto= 1)[0]
        
        iValorMedio= self.oControle.calculaValorMeidioDasPropostas(iProjeto)
        
        self.assertEquals(100.00, iValorMedio)
        
#-----------------------------------------------------MOKS---------------------------------------------------
    
    def mokarTipoUsuario(self):
        iDescricao= 'Freelancer'
        
        iTipoUsuario1= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario1.save()
        
        iDescricao= 'Ofertante'
        
        iTipoUsuario2= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario2.save()
        
        iDescricao= 'Ambos'
        
        iTipoUsuario3= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario3.save()
        
    
    def mokarClasseUsuario(self):
        iDescricao= 'Padrao'
        
        iClasseUsuario1= Classe_de_Usuario(descricao= iDescricao)
        
        iClasseUsuario1.save()
    
    def mokarCriacaoDeUmUsuario(self):
        iEmailUsuario1= '*****@*****.**'
        iSenhaUsuario1= 'teste'
        iTipoUsuario1= Tipo_de_Usuario.objects.filter(id_tipo_usuario= constantes.cntTipoUsuarioFreelancer)[0]
        iClasseUsuario1= Classe_de_Usuario.objects.filter(id_classe_usuario= constantes.cntClasseUsuarioPadrao)[0]
        iRecebeEmail1= True
        iPontuacao= 8.0
        iUsuario1= Usuario(email=iEmailUsuario1, password=iSenhaUsuario1, tipo_usuario= iTipoUsuario1, 
                           receber_email= iRecebeEmail1, classe_usuario= iClasseUsuario1, pontuacao= iPontuacao)
        iUsuario1.save()
        
        iCidade= 'Cidade'
        iUF= 'SC'
        iEndereco= Endereco()
        iEndereco.cidade= iCidade
        iEndereco.uf= iUF
        
        self.oCadastroControle.salvaEnderecoDoUsuario(iEndereco, iUsuario1) 
    
    def mokarCriacaoDeDoisUsuarios(self):
        iEmailUsuario2= '*****@*****.**'
        iSenhaUsuario2= 'teste2'
        iTipoUsuario2= Tipo_de_Usuario.objects.filter(id_tipo_usuario= constantes.cntTipoUsuarioOfertante)[0]
        iClasseUsuario2= Classe_de_Usuario.objects.filter(id_classe_usuario= constantes.cntClasseUsuarioPadrao)[0]
        iRecebeEmail2= True
        iUsuario2= Usuario(email=iEmailUsuario2, password=iSenhaUsuario2, tipo_usuario= iTipoUsuario2, 
                           receber_email= iRecebeEmail2, classe_usuario= iClasseUsuario2)
        iUsuario2.save()
        
        iEmailUsuario3= '*****@*****.**'
        iSenhaUsuario2= 'teste3'
        iTipoUsuario3= Tipo_de_Usuario.objects.filter(id_tipo_usuario= constantes.cntTipoUsuarioAmbos)[0]
        iClasseUsuario3= Classe_de_Usuario.objects.filter(id_classe_usuario= constantes.cntClasseUsuarioPadrao)[0]
        iRecebeEmail3= True
        iUsuario3= Usuario(email=iEmailUsuario3, password=iSenhaUsuario2, tipo_usuario= iTipoUsuario3, 
                           receber_email= iRecebeEmail3, classe_usuario= iClasseUsuario3)
        iUsuario3.save()
        
    def mokarCriacaoDeProjeto(self):
        iNome= 'Projeto teste'
        iProprietario= Usuario.objects.all()[0]
        iValor= self.mokarValorProjeto()
        iEstado= self.mokarEstadoProjeto()
        iDescricacao= 'Teste'
        iDuracao= 20
        iTemAnexo= False
        
        iCategoria1= Tipo_de_Habilidade.objects.filter(descricao= 'Desenvolvimento')[0]
        iProjeto1= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria1, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        iProjeto1.save()
        
        iCategoria2= Tipo_de_Habilidade.objects.filter(descricao= 'Sistemas Operacionais')[0]
        iProjeto2= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria2, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        iProjeto2.save()
        
        iCategoria3= Tipo_de_Habilidade.objects.filter(descricao= 'Software')[0]
        iProjeto3= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria3, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        iProjeto3.save()
        
        iCategoria4= Tipo_de_Habilidade.objects.filter(descricao= 'Infra')[0]
        iProjeto4= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria4, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        iProjeto4.save()
        
        iCategoria5= Tipo_de_Habilidade.objects.filter(descricao= 'Dados')[0]
        iProjeto5= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria5, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        iProjeto5.save()
        
        iCategoria6= Tipo_de_Habilidade.objects.filter(descricao= 'Mobile')[0]
        iProjeto6= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria6, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        iProjeto6.save()
        
        iCategoria7= Tipo_de_Habilidade.objects.filter(descricao= 'Midias Sociais')[0]
        iProjeto7= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria7, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        iProjeto7.save()
        
        iCategoria8= Tipo_de_Habilidade.objects.filter(descricao= 'Outras')[0]
        iProjeto8= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria8, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        iProjeto8.save()
        
        return Projetos.objects.all()
           
    
    def mokarAssociandoHabilidadesAoUsuario(self):
        iListaDeHabilidades= [1001, 1002, 1003]
        iUsuario= Usuario.objects.all()[0]
        self.oCadastroControle.salvaHabilidadesDoUsuario(iListaDeHabilidades, iUsuario)
        self.assertEqual(iUsuario.username, (Habilidades_Usuario.objects.filter(id_habilidade= 1001)[0]).id_usuario.username)
        self.assertEqual(iUsuario.username, (Habilidades_Usuario.objects.filter(id_habilidade= 1002)[0]).id_usuario.username)

    def mokarAssociandoHabilidadesAoProjeto(self):
        iListaDeHabilidades= [1001, 1002, 1003]
        iProjeto= Projetos.objects.all()[0]
        
        self.oCadastroControle.salvaHabilidadesDoProjeto(iListaDeHabilidades, iProjeto)
        self.assertEqual(iProjeto.id_projeto, (Projeto_Habilidades.objects.filter(id_habilidade= 1001)[0]).id_projeto.id_projeto)
       
    def mokarHabilidades(self):
        iDescricao1= 'Django'
        iID1= 1001
        
        iDescricao2= 'Rails'
        iID2= 1002
        
        iDescricao3= 'Zend'
        iID3= 1003
        
        iTipoHabilidade= Tipo_de_Habilidade.objects.all()[0]
        
        iHabilidade1= Habilidades(id_habilidade= iID1, descricao= iDescricao1, id_tipo= iTipoHabilidade)    
        iHabilidade2= Habilidades(id_habilidade= iID2, descricao= iDescricao2, id_tipo= iTipoHabilidade) 
        iHabilidade3= Habilidades(id_habilidade= iID3, descricao= iDescricao3, id_tipo= iTipoHabilidade) 
        
        iHabilidade1.save()
        iHabilidade2.save()
        iHabilidade3.save()
        
        return True
    
    def mokarTipoHabilidade(self):
        iDescricao1= 'Desenvolvimento'
        iTipoHabilidade1= Tipo_de_Habilidade(descricao= iDescricao1)
        iTipoHabilidade1.save()
        
        iDescricao2= 'Sistemas Operacionais'
        iTipoHabilidade2= Tipo_de_Habilidade(descricao= iDescricao2)
        iTipoHabilidade2.save()
        
        iDescricao3= 'Software'
        iTipoHabilidade3= Tipo_de_Habilidade(descricao= iDescricao3)
        iTipoHabilidade3.save()
        
        iDescricao4= 'Infra'
        iTipoHabilidade4= Tipo_de_Habilidade(descricao= iDescricao4)
        iTipoHabilidade4.save()
        
        iDescricao5= 'Dados'
        iTipoHabilidade5= Tipo_de_Habilidade(descricao= iDescricao5)
        iTipoHabilidade5.save()
        
        iDescricao6= 'Mobile'
        iTipoHabilidade6= Tipo_de_Habilidade(descricao= iDescricao6)
        iTipoHabilidade6.save()
        
        iDescricao7= 'Midias Sociais'
        iTipoHabilidade7= Tipo_de_Habilidade(descricao= iDescricao7)
        iTipoHabilidade7.save()
   
        iDescricao8= 'Outras'
        iTipoHabilidade8= Tipo_de_Habilidade(descricao= iDescricao8)
        iTipoHabilidade8.save()   
        
        return Tipo_de_Habilidade.objects.all()
    
    def mokarValorProjeto(self):
        iDescricao= 'Valor Teste'
        iValorProjeto= Valor_do_Projeto(descricao= iDescricao)
        iValorProjeto.save()
        
        return Valor_do_Projeto.objects.all()[0]
    
    def mokarEstadoProjeto(self):
        iDescricao= 'Novo'
        iEstadoProjeto1= Estado_do_Projeto(descricao= iDescricao)
        iEstadoProjeto1.save()
        
        iDescricao= 'Publicado'
        iEstadoProjeto2= Estado_do_Projeto(descricao= iDescricao)
        iEstadoProjeto2.save()
        
        return Estado_do_Projeto.objects.all()[1]
    
    def mokarCriacaoDeTipoDeEvento(self):
        iIDTipo= 1
        iDescricao= 'Criado'
        
        iTipoEvento1= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento1.save()
        
        iIDTipo= 2
        iDescricao= 'Publicado'
        
        iTipoEvento2= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento2.save()
        
        iIDTipo= 3
        iDescricao= 'FimPublicacao'
        
        iTipoEvento3= Tipo_de_Evento(id_tipo_evento= iIDTipo, descricao= iDescricao)
        iTipoEvento3.save()
        
        
    def mokarCriacaoDeEventoDeHistorico(self, vData=None):
        if vData == None:
            iData= str(datetime.datetime.today())[:19]
        else:
            iData= vData
        
        iDataFim= datetime.datetime.today() + datetime.timedelta(days= 10)
        iDataFimPassada= datetime.datetime.today() - datetime.timedelta(days= 10)
        
        
        iProjeto1 = Projetos.objects.filter(id_projeto= 1)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto1, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
        
        iProjeto2 = Projetos.objects.filter(id_projeto= 2)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto2, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
    
        iProjeto3 = Projetos.objects.filter(id_projeto= 3)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto3, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto3, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto3, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
        
        iProjeto4 = Projetos.objects.filter(id_projeto= 4)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto4, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto4, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto4, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
        
        iProjeto5 = Projetos.objects.filter(id_projeto= 5)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto5, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto5, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto5, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
        
        iProjeto6 = Projetos.objects.filter(id_projeto= 6)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto6, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto6, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto6, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
        
        iProjeto7 = Projetos.objects.filter(id_projeto= 7)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto7, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto7, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto7, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
        
        iProjeto8 = Projetos.objects.filter(id_projeto= 8)[0]
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto8, constantes.cntEventoHistorico_Criacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto8, constantes.cntEventoHistorico_Publicacao, iData)
        self.oProjetoControle.salvaHistoricoDoProjeto(iProjeto8, constantes.cntEventoHistorico_FimPublicacao, iDataFim)
    
    def mokarProposta(self):
        iValor= 100.00
        iDiasEntrega= 20
        iDescricao= 'Descricao da proposta'
        
        iIDProjeto= 1
        iUsuario= Usuario.objects.all()[0]
        
        iProposta= Propostas(valor= iValor,dias_entrega= iDiasEntrega, descricao= iDescricao)
        
        self.oProjetoControle.salvaProposta(iIDProjeto, iUsuario, iProposta)
        
        self.assertEquals(iIDProjeto, (Propostas.objects.filter(id_projeto= iIDProjeto)[0]).id_projeto.id_projeto)
        self.assertEquals(True, (Projetos.objects.filter(id_projeto= iIDProjeto)[0]).tem_proposta)
Exemple #11
0
#Importando as bibliotecas:
from controle import Controle

Controle()
Exemple #12
0
'''
Um  Estudo  sobre  o  Consumo  de  Energia  em  RedesAd  HocLineares  Aloha  com  Saltos  Equidistantes
Funcao: Otimizar energia
ENTRADA:potencia  (pt),  tamanho  do  pacote(_Nb),  taxa (_R),  distancia (_dist),  numero  de  saltos (_h), Numero de Nos(h+1).
SAIDA: energia  gasta
'''

#biblioteca para Matematica Python
import math as math
from controle import Controle
import matplotlib.pyplot as plt
import csv

#GLOBAL
ctrol = Controle("aloha")

#controle da funcao
_a = ctrol.a
_dist = ctrol.dist
_R = ctrol.R
_Nb = ctrol.Nb
_h = ctrol.h
_n = ctrol.n
PrxElec = ctrol.PrxElec
Pstart = ctrol.Pstart
Tstart = ctrol.Tstart
PtxElec = ctrol.PtxElec
aamp = ctrol.aamp
bamp = ctrol.bamp
N0 = ctrol.N0
fc = ctrol.fc
Exemple #13
0
class Form(QMainWindow, MainWindow.Ui_MainWindow):

    def __init__(self, parent=None):
        super(Form, self).__init__(parent)
        self.setupUi(self)
        self.setWindowTitle(__appname__)
        self.dados = Controle()

        self.tableWidgetRegistros.setColumnWidth(1, 200)
        # Todos os eventos da interface grafica
        self.pushButtonAdicionarAluno.clicked.connect(self.adicionar_aluno)
        self.pushButtonRemoverAluno.clicked.connect(self.apagar_aluno)
        self.pushButtonEditarAluno.clicked.connect(self.editar_dados_aluno)
        self.pushButtonVerDados.clicked.connect(self.ver_dados_aluno)
        self.pushButtonProfAdicionar.clicked.connect(self.adicionar_professor)
        self.pushButtonProfRemover.clicked.connect(self.apagar_professor)
        self.pushButtonProfEditar.clicked.connect(self.editar_dados_professor)
        self.pushButtonProfVerDados.clicked.connect(self.ver_dados_professor)
        self.pushButtonAdicionarSala.clicked.connect(self.adicionar_sala)
        self.pushButtonAddProfSala.clicked.connect(self.associar_professor_sala)
        self.pushButtonAddAlunoSala.clicked.connect(self.associar_aluno_sala)
        self.listWidgetSalasCadastradas.itemClicked.connect(self.atualizar_dados_sala)
        self.comboBoxSalasRegistro.currentIndexChanged.connect(self.povoar_combobox_alunoRegistro)
        self.pushButton_Emprestar.clicked.connect(self.emprestar_chave)
        self.pushButton_Devolver.clicked.connect(self.devolver_chave)

    """
    Aqui ficam todos os metodos necessarios da aba alunos
    
    """


    def adicionar_aluno(self):
        nome = self.lineEditAlunoNome.text()
        curso = self.comboBoxCurso.currentText()
        matricula = self.lineEditMatricula.text()
        telefone = self.lineEditTelefone.text()
        email = self.lineEditEmail.text()
        self.dados.adicionar_aluno(nome,curso,matricula,telefone,email)
        self.listWidgetAlunos.addItem(nome)# na secao aluno
        self.listWidgetSalaAluno.addItem(nome) # na secao sala
        self.limpar_campos()

    def apagar_aluno(self):
        linha_selecionada = self.listWidgetAlunos.currentRow()
        if linha_selecionada == -1:
            msg = QMessageBox()
            msg.setText("Nenhum aluno selecionado!")
            msg.exec_()
        else:
            item = self.listWidgetAlunos.takeItem(linha_selecionada)  # secao aluno
            self.listWidgetSalaAluno.takeItem(linha_selecionada)  # secao sala
            nome = item.text()
            self.dados.deletar_aluno(nome)


    def ver_dados_aluno(self):
        linha_selecionada = self.listWidgetAlunos.currentRow()
        aluno = self.dados.get_aluno(linha_selecionada)
        self.lineEditAlunoNome.setText(aluno.nome)
        curso = aluno.curso
        indice = self.comboBoxCurso.findText(curso)
        self.comboBoxCurso.setCurrentIndex(indice)
        self.lineEditMatricula.setText(aluno.matricula)
        self.lineEditTelefone.setText(aluno.telefone)
        self.lineEditEmail.setText(aluno.email)


    def ver_dados_professor(self):
        linha_selecionada = self.listWidgetProf.currentRow()
        p = self.dados.get_professor(linha_selecionada)
        self.lineEditProfNome.setText(p.nome)
        self.lineEditProfTelefone.setText(p.telefone)
        self.lineEditProfEmail.setText(p.email)


    def editar_dados_aluno(self):
        linha_selecionada = self.listWidgetAlunos.currentRow()
        if linha_selecionada == -1:
            msg = QMessageBox()
            msg.setText("Nenhum aluno selecionado!")
            msg.exec_()
        else:
            aluno = self.dados.get_aluno(linha_selecionada)
            d = AlunoDialog()
            d.lineNome.setText(aluno.nome)
            curso = aluno.curso
            indice = self.comboBoxCurso.findText(curso)
            d.comboBoxCurso.setCurrentIndex(indice)
            d.lineMatricula.setText(aluno.matricula)
            d.lineTelefone.setText(aluno.telefone)
            d.lineEmail.setText(aluno.email)
            if d.exec_():
                nome = d.lineNome.text()
                curso = d.comboBoxCurso.currentText()
                matricula = d.lineMatricula.text()
                telefone = d.lineTelefone.text()
                email = d.lineEmail.text()
                self.dados.atualizar_dados_aluno(linha_selecionada, nome, curso, matricula, telefone, email)
                self.listWidgetAlunos.takeItem(linha_selecionada)
                self.listWidgetAlunos.insertItem(linha_selecionada, nome)
                self.listWidgetSalaAluno.takeItem(linha_selecionada)
                self.listWidgetSalaAluno.insertItem(linha_selecionada, nome)


    """
    Aqui ficam todos os metodos necessarios da aba professores
    
    """


    def adicionar_professor(self):
        # adiciona o professor a lista de cadastrados na aba professor
        nome = self.lineEditProfNome.text()
        telefone = self.lineEditProfTelefone.text()
        email = self.lineEditProfEmail.text()
        self.dados.adicionar_professor(nome,telefone,email)
        self.listWidgetProf.addItem(nome)
        self.listWidgetSalaProf.addItem(nome)
        self.limpar_campos()
        self.dados.imprimir_dados(1)

    def apagar_professor(self):
        linha_selecionada = self.listWidgetProf.currentRow()
        if linha_selecionada == -1:
            msg = QMessageBox()
            msg.setText("Nenhum professor selecionado!")
            msg.exec_()
        else:
            item = self.listWidgetProf.takeItem(linha_selecionada)  # secao aluno
            self.listWidgetSalaProf.takeItem(linha_selecionada)  # secao sala
            nome = item.text()
            self.dados.deletar_professor(nome)


    def editar_dados_professor(self):
        linha_selecionada = self.listWidgetProf.currentRow()
        if linha_selecionada == -1:
            msg = QMessageBox()
            msg.setText("Nenhum professor selecionado!")
            msg.exec_()
        else:
            professor = self.dados.get_professor(linha_selecionada)
            d = ProfDialog()
            d.lineEditProfNome.setText(professor.nome)
            d.lineEditProfTelefone.setText(professor.telefone)
            d.lineEditProfEmail.setText(professor.email)
            if d.exec_():
                nome = d.lineEditProfNome.text()
                telefone = d.lineEditProfTelefone.text()
                email = d.lineEditProfEmail.text()
                self.dados.atualizar_dados_professor(linha_selecionada, nome, telefone, email)
                self.listWidgetProf.takeItem(linha_selecionada)
                self.listWidgetProf.insertItem(linha_selecionada, nome)
                self.listWidgetSalaProf.takeItem(linha_selecionada)
                self.listWidgetSalaProf.insertItem(linha_selecionada, nome)


    """
    Aqui ficam todos os metodos necessarios da aba salas
    
    """



    def adicionar_sala(self):
        # adiciona a sala em uma lista de salas na aba sala

        nome_sala =  self.lineEditIdSala.text()
        quantidades_chaves = self.spinBoxNumeroChaves.text()

        # cadastra sala na lista
        self.listWidgetSalasCadastradas.addItem(nome_sala)
        self.dados.adicionar_sala(nome_sala,quantidades_chaves)
        # Limpar campos
        self.lineEditIdSala.clear()
        self.spinBoxNumeroChaves.setValue(0)

        #povoar a combobox de sala na aba de registro
        self.comboBoxSalasRegistro.addItem(nome_sala)


        # TODO : implementar a rotida de editar os valores da sala em uma nova versao
        # editando os valores da sala em um form em separado como se edita o professor ou aluno


    def associar_professor_sala(self):

        #testar se tem professor selecionado na lista
        linha_selecionada = self.listWidgetSalaProf.currentRow()

        if linha_selecionada == -1:
            msg = QMessageBox()
            msg.setText("Nenhum professor selecionado!")
            msg.exec_()
            return -1 # retornar -1 significa que nao tem professor selecionado

        # testar se tem sala selecionada na lista
        sala_selecionada = self.listWidgetSalasCadastradas.currentRow()

        if sala_selecionada == -1:
            msg = QMessageBox()
            msg.setText("Nenhuma sala cadastrada foi selecionada!")
            msg.exec_()
            return -2 # retornar -2 significa que não tem sala cadastrada selecionada

        # pegar o professor selecionado na lista
        item = self.listWidgetSalaProf.item(linha_selecionada)
        nome_professor = item.text()
        # procurar o objeto professor no "banco"
        professor = self.dados.get_professor_nome(nome_professor)
        # pegar o nome da sala
        item = self.listWidgetSalasCadastradas.item(sala_selecionada)
        sala = item.text()
        # adicionar o professor a sala selecionada
        self.dados.adicionar_professor_sala(professor, sala)
        # na GUI adicionar o nome do professor a lista de professores associados
        self.listWidgetSalaProfAssociados.addItem(nome_professor)



    #TODO: implementar a desasociacao de professor em futura versao
    def deassociar_professor_sala(self):
        pass


    def associar_aluno_sala(self):
        # testar se tem aluno selecionado na lista
        linha_selecionada = self.listWidgetSalaAluno.currentRow()

        if linha_selecionada == -1:
            msg = QMessageBox()
            msg.setText("Nenhum Aluno selecionado!")
            msg.exec_()
            return -1  # retornar -1 significa que nao tem professor selecionado

        # testar se tem sala selecionada na lista
        sala_selecionada = self.listWidgetSalasCadastradas.currentRow()

        if sala_selecionada == -1:
            msg = QMessageBox()
            msg.setText("Nenhuma sala cadastrada foi selecionada!")
            msg.exec_()
            return -2  # retornar -2 significa que não tem sala cadastrada selecionada

        # pegar o nome do aluno selecionado na lista
        item = self.listWidgetSalaAluno.item(linha_selecionada)
        nome_aluno = item.text()
        # procurar o objeto aluno no "banco"
        aluno = self.dados.get_aluno_nome(nome_aluno)
        # pegar o nome da sala
        item = self.listWidgetSalasCadastradas.item(sala_selecionada)
        sala = item.text()
        # adicionar o Aluno a sala selecionada
        self.dados.adicionar_aluno_sala(aluno, sala)
        # na GUI adicionar o nome do professor a lista de professores associados
        self.listWidgetSalaAlunoAssociados.addItem(nome_aluno)


    # TODO: implementar a desasociacao de professor em futura versao
    def deassociar_aluno_sala(self):
        pass


    """
    Metodos necessarios ao emprestimo/devolucao de chaves
    """

    def emprestar_chave(self):


        nome_sala = self.comboBoxSalasRegistro.currentText()
        nome_aluno = self.comboBoxAlunoRegistro.currentText()


        hoje = datetime.now()
        dia = hoje.day
        mes = hoje.month
        ano = hoje.year
        data = str(dia) + "/" + str(mes) +"/"+ str(ano)
        hora = hoje.hour
        minuto = hoje.minute
        hora_emprestimo = str(hora) + ":"+str(minuto)

        self.tableWidgetRegistros.insertRow(0)
        self.tableWidgetRegistros.setItem(0, 0, QTableWidgetItem(nome_sala))
        self.tableWidgetRegistros.setItem(0, 1, QTableWidgetItem(nome_aluno))
        self.tableWidgetRegistros.setItem(0, 2, QTableWidgetItem("Emprestada") )
        self.tableWidgetRegistros.setItem(0, 3, QTableWidgetItem(data))
        self.tableWidgetRegistros.setItem(0, 4, QTableWidgetItem(hora_emprestimo))
        self.tableWidgetRegistros.setItem(0, 5, QTableWidgetItem("--"))


    def devolver_chave(self):

        # TODO: A tabela deve ser atualizada para poder acomodar o caso em que um aluno pega a
        # chave em um dia e devolve em um dia diferente

        linha_selecionada = self.tableWidgetRegistros.currentRow()
        if linha_selecionada == -1:
            QMessageBox.information(self, "Erro", "Você precisa selecionar uma linha para devolução de chave")
        else:
            hoje = datetime.now()

            hora = hoje.hour
            minuto = hoje.minute
            hora_devolucao = str(hora) + ":" + str(minuto)
            self.tableWidgetRegistros.setItem(linha_selecionada, 2, QTableWidgetItem("Devolvida"))
            self.tableWidgetRegistros.setItem(linha_selecionada, 5, QTableWidgetItem(hora_devolucao))



    """
    Outros métodos ...
    """



    def limpar_campos(self):
        self.lineEditAlunoNome.clear()
        self.lineEditAlunoNome.setFocus()
        self.comboBoxCurso.setCurrentIndex(0)
        self.lineEditMatricula.clear()
        self.lineEditTelefone.clear()
        self.lineEditEmail.clear()
        #aba professor
        self.lineEditProfNome.clear()
        self.lineEditProfNome.setFocus()
        self.lineEditProfTelefone.clear()
        self.lineEditProfEmail.clear()


    def atualizar_dados_sala(self):
        #limpar lista de professores associados e de alunos associados

        self.listWidgetSalaProfAssociados.clear()
        self.listWidgetSalaAlunoAssociados.clear()

        # procurar o objeto sala na lista de salas
        sala_selecionada = self.listWidgetSalasCadastradas.currentRow()
        item = self.listWidgetSalasCadastradas.item(sala_selecionada)
        nome_sala = item.text()
        print("sala:", nome_sala)
        sala = self.dados.get_sala_nome(nome_sala)

        # pegar o nome dos professores associados e adicionar a lista
        lista_professores = sala.get_lista_professores()
        for i in lista_professores:
            self.listWidgetSalaProfAssociados.addItem(i.get_nome())


        # pegar o nome dos alunos associados e adicionar na lista
        lista_alunos = sala.get_lista_alunos()
        for i in lista_alunos:
            self.listWidgetSalaAlunoAssociados.addItem(i.get_nome())


    def povoar_combobox_alunoRegistro(self):

         # povoar a combobox com os alunos da sala correspondente
        self.comboBoxAlunoRegistro.clear()
        nome_sala = self.comboBoxSalasRegistro.currentText()
        sala = self.dados.get_sala_nome(nome_sala)
        lista_obj_alunos = sala.get_lista_alunos()
        if len(lista_obj_alunos) != 0:
            for al in lista_obj_alunos:
                self.comboBoxAlunoRegistro.addItem(al.get_nome())
Exemple #14
0
class Test(TestCase):


    def setUp(self):
        self.oControle= Controle()
        self.oProjetoControle= ProjetoControle()
        self.mokarTipoUsuario()
        self.mokarClasseUsuario()
        self.mokarPortfolio()
        self.mokarCriacaoDeUmUsuario()  
        self.mokarCriacaoDeProjeto()
        pass


    def tearDown(self):
        pass


    def mokarCriacaoDeUmUsuario(self):
        iEmailUsuario1= '*****@*****.**'
        iSenhaUsuario1= 'teste'
        iUsername1= '000001'
        iTipoUsuario1= Tipo_de_Usuario.objects.filter(id_tipo_usuario= constantes.cntTipoUsuarioFreelancer)[0]
        iClasseUsuario1= Classe_de_Usuario.objects.filter(id_classe_usuario= constantes.cntClasseUsuarioPadrao)[0]
        iRecebeEmail1= True
        iNome= 'Nome'
        iSobrenome= 'Sobrenome'
        iUsuario1= Usuario(email=iEmailUsuario1, password=iSenhaUsuario1, tipo_usuario= iTipoUsuario1, 
                           receber_email= iRecebeEmail1, first_name= iNome, last_name= iSobrenome,
                           classe_usuario= iClasseUsuario1)
        iUsuario1.save()
            
        self.assertEquals(iUsername1, (Usuario.objects.filter(email= iEmailUsuario1)[0]).username)

    def testCriandoDoisUsuarios(self):
        iEmailUsuario1= '*****@*****.**'
        iSenhaUsuario1= 'teste'
        iUsername1= '000001'
        iTipoUsuario1= Tipo_de_Usuario.objects.filter(id_tipo_usuario= constantes.cntTipoUsuarioFreelancer)[0]
        iClasseUsuario1= Classe_de_Usuario.objects.filter(id_classe_usuario= constantes.cntClasseUsuarioPadrao)[0]
        iRecebeEmail1= True
        iUsuario1= Usuario(email=iEmailUsuario1, password=iSenhaUsuario1, tipo_usuario= iTipoUsuario1, 
                           receber_email= iRecebeEmail1, classe_usuario= iClasseUsuario1)
        iUsuario1.save()
        
        iEmailUsuario2= '*****@*****.**'
        iSenhaUsuario2= 'teste2'
        iUsername2= '000009'
        iTipoUsuario2= Tipo_de_Usuario.objects.filter(id_tipo_usuario= constantes.cntTipoUsuarioFreelancer)[0]
        iClasseUsuario2= Classe_de_Usuario.objects.filter(id_classe_usuario= constantes.cntClasseUsuarioPadrao)[0]
        iRecebeEmail2= True
        iUsuario2= Usuario(email=iEmailUsuario2, password=iSenhaUsuario2, tipo_usuario= iTipoUsuario2, 
                           receber_email= iRecebeEmail2, classe_usuario= iClasseUsuario2)
        iUsuario2.save()
            
        self.assertEquals(iUsername1, (Usuario.objects.filter(email= iEmailUsuario1)[0]).username)
        self.assertEquals(iUsername2, (Usuario.objects.filter(email= iEmailUsuario2)[0]).username)
        
    def testEditandoConfiguracoes(self):
        iUsuario= Usuario.objects.all()[0]
        
        if iUsuario.receber_email:
            iUsuario.receber_email= False
        else:
            iUsuario.receber_email= True
        
        iUsuario.save()
        
        self.assertEquals(iUsuario.receber_email, 
                          (Usuario.objects.filter(username= iUsuario.username)[0]).receber_email)
        
    def testEditandoPerfil(self):
        iPrimeiroNome= 'Nome'
        iSobrenome= 'Sobrenome'
        iEmpresa= 'Empresa'
        
        iDDD= '48'
        iTelefone= '22223333'
        iCEP= '88000230'
        iRua= 'Rua das Margaridas Amarelas Semi-Floridas'
        iNumero= '2000'
        iComplemento= 'Cogumelo 1'
        iBairro= 'Floresta de Antena'
        iCidade= 'Cidade'
        iUF= 'SC'
        iPais= 'Pais'
        
        iUsuario= Usuario.objects.all()[0]
        
        iUsuario.first_name= iPrimeiroNome
        iUsuario.last_name= iSobrenome
        iUsuario.save()
        
        iEndereco= Endereco()
        iEndereco.cidade= iCidade
        iEndereco.uf= iUF
        
        self.oControle.salvaEnderecoDoUsuario(iEndereco, iUsuario) 
            
        self.assertEquals(iSobrenome, (Usuario.objects.filter(username= iUsuario.username)[0]).last_name)
        self.assertEquals(iEndereco.uf, (Usuario.objects.filter(username= iUsuario.username)[0]).id_endereco.uf)
    
    def testObtendoListaDeHabilidadesDoProjeto(self):
        self.mokarAssociandoHabilidadesAoProjeto()
        iListaDeHabilidades= [1001, 1002, 1003]
        iProjeto= Projetos.objects.all()[0]
        
        self.oControle.obterIDsHabilidadesDoProjeto(iProjeto)
        self.assertEqual(iListaDeHabilidades, self.oControle.obterIDsHabilidadesDoProjeto(iProjeto))
        
    def testObtendoNomeDoUsuario(self):
        iUsuario= Usuario.objects.all()[0]
        iIDUsuario= iUsuario.id
        
        iNome= self.oControle.obterNomeUsuario(iIDUsuario)
        
        self.assertEqual(iNome, 'Nome S.')
        

    def testObtendoListaDeHabilidadesDoUsuario(self):
        self.mokarAssociandoHabilidadesAoUsuario()
        iListaDeHabilidades= [1001, 1002, 1003]
        iUsuario= Usuario.objects.all()[0]
        
        self.oControle.obterIDsHabilidadesDoUsuario(iUsuario)
        self.assertEqual(iListaDeHabilidades, self.oControle.obterIDsHabilidadesDoUsuario(iUsuario))
    
    def testObtendoUsuario(self):
        iUser= Usuario.objects.all()[0]
        self.assertEqual(iUser, self.oControle.obterUsuario(iUser))
        
    def testAlterandoEstadoDoProjeto(self): 
        iProjeto= Projetos.objects.all()[0]
        
        self.oProjetoControle.alteraEstadoDoProjeto(iProjeto, constantes.cntEstadoProjeto_Publicado) 
        
        self.assertEqual(iProjeto.id_estado.id_estado, constantes.cntEstadoProjeto_Publicado)
    
    def testObtendendoEnderecoDoUsuario(self):
        self.testEditandoPerfil()
        iUsuario= Usuario.objects.all()[0]
        
        iEndereco= self.oControle.obterEnderecoDoUsuario(iUsuario.id)
        
        self.assertEquals(iEndereco.cep, (Usuario.objects.filter(id= iUsuario.id)[0]).id_endereco.cep )
    
    def testCriandoPortfolio(self):
        iUsuario= Usuario.objects.all()[0]
        iGitHub= 'spenglerBR'
        iLinkedIn= 'alexandrespengler'
        iCoderWall= None
        iSiteEmpresa= 'http://shiftit.com.br'
        
        self.oControle.salvaPortfolioDoUsuario(iUsuario.id, iGitHub, iLinkedIn, iCoderWall, None, iSiteEmpresa)
        
        self.assertEquals('http://github.com/spenglerBR', (Portfolio_Usuario.objects.filter(id_usuario= iUsuario.id,
                                                                     id_portfolio= constantes.cntPortfolio_GitHub)[0]).url )
        
    def testObtendoPortfolioDoUsuario(self):
        self.testCriandoPortfolio()
        iUsuario= Usuario.objects.all()[0]
        
        iSiteEmpresa= 'http://shiftit.com.br'
        iCoderWall= None
        iGitHub= 'spenglerBR'
        
        iPortfolio= self.oControle.obtemPortfolioDoUsuario(iUsuario.id)
        
        self.assertEquals(iSiteEmpresa, iPortfolio.siteEmpresa)
        self.assertEquals(iCoderWall, iPortfolio.coderWall)
        self.assertEquals(iGitHub, iPortfolio.usuario_gitHub)
    
    def testCalculandoPontucaoDoPerfil(self):
        iUsuario= Usuario.objects.all()[0]
        iPontuacao= self.oControle.calculaPontucaoPerfil(iUsuario)
        
        self.assertEquals(9, iPontuacao)
    
    def testCalculandoPontucaoDePropostas(self):
        iUsuario= Usuario.objects.all()[0]
        iPontuacao= self.oControle.calculaPontuacaoPropostas(iUsuario)
        
        self.assertEquals(0, iPontuacao)
    
    def testCalculandoPontucaoDeProjetos(self):
        iUsuario= Usuario.objects.all()[0]
        iPontuacao= self.oControle.calculaPontuacaoProjetos(iUsuario)
        
        self.assertEquals(0, iPontuacao)
    
    def testCalculandoPontucaoDeViolacoes(self):
        iUsuario= Usuario.objects.all()[0]
        iPontuacao= self.oControle.calculaPontuacaoViolacoes(iUsuario)
        
        self.assertEquals(0, iPontuacao)
    
    def testCalculandoPontucaoDoUsuario(self):
        iUsuario= Usuario.objects.all()[0]
        iPontuacao= self.oControle.calculaPontuacaoDoUsuario(iUsuario.id)
        
        self.assertEquals(0.9, float('%.1f' % iPontuacao))
    
    
        
#--------------------------------------------------------MOKS----------------------------------------------------------

    def mokarTipoUsuario(self):
        iDescricao= 'Freelancer'
        
        iTipoUsuario1= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario1.save()
        
        iDescricao= 'Ofertante'
        
        iTipoUsuario2= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario2.save()
        
        iDescricao= 'Ambos'
        
        iTipoUsuario3= Tipo_de_Usuario(descricao= iDescricao)
        
        iTipoUsuario3.save()
        
    
    def mokarClasseUsuario(self):
        iDescricao= 'Padrao'
        
        iClasseUsuario1= Classe_de_Usuario(descricao= iDescricao)
        
        iClasseUsuario1.save()
    
    def mokarCriacaoDeProjeto(self):
        iNome= 'Projeto teste'
        iProprietario= Usuario.objects.all()[0]
        iCategoria= self.mokarTipoHabilidade()
        iValor= self.mokarValorProjeto()
        iEstado= self.mokarEstadoProjeto()
        iDescricacao= 'Teste de descricacao'
        iDuracao= 20
        iTemAnexo= False
        
        
        iProjeto= Projetos(id_proprietario= iProprietario, id_categoria= iCategoria, id_valor= iValor,
                           id_estado= iEstado, nome= iNome, descricao= iDescricacao, duracao= iDuracao, 
                           tem_anexo= iTemAnexo)
        
        iProjeto.save()
        
    
    def mokarAssociandoHabilidadesAoUsuario(self):
        iListaDeHabilidades= [1001, 1002, 1003]
        
        iUsuario= Usuario.objects.all()[0]
        
        self.mokarHabilidades()
        
        self.oControle.salvaHabilidadesDoUsuario(iListaDeHabilidades, iUsuario)
        

    def mokarAssociandoHabilidadesAoProjeto(self):
        iListaDeHabilidades= [1001, 1002, 1003]
        
        iProjeto= Projetos.objects.all()[0]
        
        self.mokarHabilidades()
        
        self.oControle.salvaHabilidadesDoProjeto(iListaDeHabilidades, iProjeto)
    
    
    def mokarHabilidades(self):
        iDescricao1= 'Django'
        iID1= 1001
        
        iDescricao2= 'Rails'
        iID2= 1002
        
        iDescricao3= 'Zend'
        iID3= 1003
        
        iTipoHabilidade= self.mokarTipoHabilidade()
        
        iHabilidade1= Habilidades(id_habilidade= iID1, descricao= iDescricao1, id_tipo= iTipoHabilidade)    
        iHabilidade2= Habilidades(id_habilidade= iID2, descricao= iDescricao2, id_tipo= iTipoHabilidade) 
        iHabilidade3= Habilidades(id_habilidade= iID3, descricao= iDescricao3, id_tipo= iTipoHabilidade) 
        
        iHabilidade1.save()
        iHabilidade2.save()
        iHabilidade3.save()
        
        return True
    
    def mokarTipoHabilidade(self):
        iDescricao= 'Habilidade Teste'
        
        iTipoHabilidade= Tipo_de_Habilidade(descricao= iDescricao)
        
        iTipoHabilidade.save()
        
        return Tipo_de_Habilidade.objects.all()[0]
    
    def mokarValorProjeto(self):
        iDescricao= 'Valor Teste'
        
        iValorProjeto= Valor_do_Projeto(descricao= iDescricao)
        
        iValorProjeto.save()
        
        return Valor_do_Projeto.objects.all()[0]
    
    def mokarEstadoProjeto(self):
        iDescricao1= 'Novo'
        
        iEstadoProjeto1= Estado_do_Projeto(descricao= iDescricao1)
        
        iEstadoProjeto1.save()
        
        iDescricao2= 'Publicado'
        
        iEstadoProjeto2= Estado_do_Projeto(descricao= iDescricao2)
        
        iEstadoProjeto2.save()
        
        return Estado_do_Projeto.objects.all()[0]

    def mokarPortfolio(self):
        iDescricao1= 'GitHub'
        iPortfolio1= Portfolio(descricao= iDescricao1)
        iPortfolio1.save()
        
        iDescricao2= 'LinkedIn'
        iPortfolio2= Portfolio(descricao= iDescricao2)
        iPortfolio2.save()
        
        iDescricao3= 'CoderWall'
        iPortfolio3= Portfolio(descricao= iDescricao3)
        iPortfolio3.save()
        
        iDescricao4= 'SitePessoal'
        iPortfolio4= Portfolio(descricao= iDescricao4)
        iPortfolio4.save()
        
        iDescricao5= 'SiteEmpresa'
        iPortfolio5= Portfolio(descricao= iDescricao5)
        iPortfolio5.save()
Exemple #15
0
#!/usr/bin/env python

if __name__ == "__main__":
    
    from querys import Modelo
    from controle import Controle    
    from login import Login
    
    modelo = Modelo()
    controle = Controle()    
    interface = Login()
    
    controle.set_modelo(modelo)
    controle.set_interface(interface)
    interface.set_controle(controle)
    
    controle.start()
def main(stdscr):
    posicoes = [[' ', ' ', ' '], [' ', ' ', ' '], [' ', ' ', ' ']]

    controle = Controle(stdscr=stdscr)
    tela = Tela(stdscr=stdscr, posicoes=posicoes)
    jogadores = Jogadores(controle=controle, posicoes=posicoes)
    tela.reiniciar_tela()

    jogador_x = 0
    jogador_o = 0

    while True:
        controle.espaco_do_tabuleiro()
        if jogadores.fim_de_partida is False:
            if controle.entrada == "\n":
                jogadores.jogar()

            if jogadores.fim_de_partida is True:
                ganhador = jogadores.vencedor
                if ganhador == "x":
                    jogador_x += 1
                if ganhador == "o":
                    jogador_o += 1

        if controle.entrada == "y":
            """
            # Gera o bug de referência
            posicoes = [[' ', ' ', ' '], [' ', ' ', ' '], [' ', ' ', ' ']]
            controle.pos_y = 0
            controle.pos_x = 0
            jogadores.vencedor = None
            jogadores.fim_de_partida = False
            tela.reiniciar_tela()
            """

            #Adequado para poupar memória ao
            #longo da execução prolongada do programa
            for i in range(3):
                for j in range(3):
                    posicoes[i][j] = " "

            controle.pos_y = 0
            controle.pos_x = 0
            jogadores.vencedor = None
            jogadores.fim_de_partida = False
            tela.reiniciar_tela()
            """
            #Cria novos objetos do jogo a cada reinicialização da partida
            #Ao longo do tempo poderá gerar muito lixo na memória
            posicoes = [[' ', ' ', ' '], [' ', ' ', ' '], [' ', ' ', ' ']]
            controle = Controle(stdscr=stdscr)
            tela = Tela(stdscr=stdscr, posicoes=posicoes)
            jogadores = Jogadores(controle=controle, posicoes=posicoes)
            tela.reiniciar_tela()
            """

        if controle.entrada == 'h':
            tela.ajuda()
        else:
            tela.tabuleiro(controle)
            tela.placar(jogador_x, jogador_o)
            if jogadores.fim_de_partida is True:
                tela.fim_de_jogo(jogadores.vencedor)
            controle.cursor()
Exemple #17
0
 async def on_chat_message(self, msg):
     controle = Controle(msg)
     await self.retorna(controle.comando)
     return
Exemple #18
0
from enemy import Wooden, Steam
from controle import Controle
from grupos import (
    grupo_player,
    grupo_enemy,
    grupo_objets_player,
    grupo_objets_enemy,
    All_sprites,
)

tick_enemies = 0
clock = Clock()
background = Background()
som = Som()
placar = Placar()
controle = Controle()
enemylist = [Wooden, Steam]
paralaxe = 0
running = True
stopgame = True
# som.play()

while running:

    clock.tick(25)

    screen.fill((255, 255, 255))

    if not stopgame:
        if tick_enemies == 0:
            if background.distance % DIFICULT_AVANCE == 0:
Exemple #19
0
'''
Um  Estudo  sobre  o  Consumo  de  Energia  em  RedesAd  HocLineares  Aloha  com  Saltos  Equidistantes
Funcao: Otimizar energia
ENTRADA:potencia  (pt),  tamanho  do  pacote(_Nb),  taxa (_R),  distancia (_dist),  numero  de  saltos (_h), Numero de Nos(h+1).
SAIDA: energia  gasta
'''

#biblioteca para Matematica Python
import math as math
from controle import Controle
import matplotlib.pyplot as plt
import csv

#GLOBAL
ctrol = Controle("csma")

#controle da funcao
_a = ctrol.a
_dist = ctrol.dist
_R = ctrol.R
_Nb = ctrol.Nb
_h = ctrol.h
_n = ctrol.n
_P0i = ctrol.P0i
_P0o = ctrol.P0o

PrxElec = ctrol.PrxElec
Pstart = ctrol.Pstart
Tstart = ctrol.Tstart
PtxElec = ctrol.PtxElec
aamp = ctrol.aamp