Ejemplo n.º 1
0
 def SetUp(self):
     self.banco = Banco("banco")
     self.cajero = CajeroAutomatico(self.banco)
     self.banco.agregar_usuario("rut2", "nombre2", "clave2")
     self.banco.agregar_usuario("rut", "nombre", "clave")
     self.banco.usuarios[0].saldo = 100000
     self.monto = 50000
Ejemplo n.º 2
0
 def __init__(self, parent=None):
     super(Main, self).__init__(parent)
     self.setupUI(self)
     self.banco = Banco()
     #tela inicial
     self.tela_inicial.ButtonCadastrar.clicked.connect(
         self.abrirTelaCadastro)
     self.tela_inicial.ButtonLogin.clicked.connect(self.abrirTelaLogin)
     #Tela cadastro
     self.tela_cadastro.ButtonConfirmar.clicked.connect(self.cadastro)
     self.tela_cadastro.ButtonVoltar.clicked.connect(self.abrirTelaInicial)
     #Tela login
     self.tela_login.ButtonEntrar.clicked.connect(self.botaoLogin)
     self.tela_login.ButtonVoltar.clicked.connect(self.abrirTelaInicial)
     #Tela opcoes
     self.tela_opcoes.ButtonExtrato.clicked.connect(self.abrirTelaExtrato)
     self.tela_opcoes.ButtonSaque.clicked.connect(self.abrirTelaSaque)
     self.tela_opcoes.ButtonDeposito.clicked.connect(self.abrirTelaDeposito)
     self.tela_opcoes.ButtonTransferir.clicked.connect(
         self.abrirTelaTransferencia)
     self.tela_opcoes.ButtonVoltar.clicked.connect(self.sairOpcoes)
     #Tela extrato
     self.tela_extrato.ButtonVoltar.clicked.connect(self.abrirTelaOpcoes)
     #Tela saque
     self.tela_saque.ButtonVoltar.clicked.connect(self.abrirTelaOpcoes)
     self.tela_saque.ButtonConfirmar.clicked.connect(self.botaoSaque)
     #Tela deposito
     self.tela_deposito.ButtonVoltar.clicked.connect(self.abrirTelaOpcoes)
     self.tela_deposito.ButtonConfirmar.clicked.connect(self.botaoDeposito)
     #tela transferencia
     self.tela_transferencia.ButtonVoltar.clicked.connect(
         self.abrirTelaOpcoes)
     self.tela_transferencia.ButtonTransferir.clicked.connect(
         self.botaoTransfere)
Ejemplo n.º 3
0
def test_abre_conta():
    b = Banco('nome')
    c = Cliente('nome', 99999999, '*****@*****.**')
    b.abre_conta([c], 100)
    ccs = b.lista_contas()
    assert len(ccs) == 1
    assert type(ccs[0]) == Conta
    assert ccs[0].get_numero() == 1, 'A primeira conta deve ser a numero 1'
Ejemplo n.º 4
0
def test_abre_conta():
    b = Banco('nome')
    c = Cliente('nome', 99999999, '*****@*****.**')
    b.abre_conta([c], 100)
    ccs = b.lista_contas()
    assert len(ccs) == 1, 'O banco deveria ter 1 conta'
    assert type(ccs[0]) == Conta, 'Deveria retornar um objeto do tipo Conta'
    assert ccs[0].get_numero() == 1, 'A primeira conta deve ser a numero 1'
Ejemplo n.º 5
0
def test_abre_conta_2():
    b = Banco('nome')
    c = Cliente('nome', 99999999, '*****@*****.**')
    b.abre_conta([c], 100)
    b.abre_conta([c], 500)
    ccs = b.lista_contas()
    assert len(ccs) == 2
    assert type(ccs[1]) == Conta
    assert ccs[1].get_numero() == 2, 'A segunda conta deve ser a numero 2'
Ejemplo n.º 6
0
def test_abre_conta_2():
    b = Banco('nome')
    c = Cliente('nome', 99999999, '*****@*****.**')
    b.abre_conta([c], 100)
    b.abre_conta([c], 500)
    ccs = b.lista_contas()
    assert len(ccs) == 2, 'O banco deveria ter 2 contas'
    assert type(ccs[1]) == Conta, 'Deveria retornar um objeto do tipo Conta'
    assert ccs[1].get_numero() == 2, 'A segunda conta deve ser a numero 2'
Ejemplo n.º 7
0
def test_banco_contas_existentes():
    b = Banco('nome')
    c = Cliente('nome', 99999999, '*****@*****.**')
    b.abre_conta([c], 200)
    b.abre_conta([c], 300)
    assert len(b.contas) == 2, 'O banco deveria ter 2 contas'
    for cc in b.contas:
        assert isinstance(cc, Conta), ('Os elementos da lista de contas '
                                       'devem ser instâncias da classe Conta')
Ejemplo n.º 8
0
class TestCajeros(unittest.TestCase):
    def SetUp(self):
        self.banco = Banco("banco")
        self.cajero = CajeroAutomatico(self.banco)
        self.banco.agregar_usuario("rut2", "nombre2", "clave2")
        self.banco.agregar_usuario("rut", "nombre", "clave")
        self.banco.usuarios[0].saldo = 100000
        self.monto = 50000

    def test_credenciales(self):
        self.cajero.login(self.banco.usuarios[0].rut,
                          self.banco.usuarios[0].clave)
        self.assertIsNotNone(self.banco.usuarioactual)
        self.cajero.login("rut_falso", "clave_falsa")
        self.assertIsNone(self.banco.usuarioactual)

    def test_dinero_disponible(self):
        self.cajero.retirar_dinero('rut', 'clave', self.monto)
        self.assertGreaterEqual(self.banco.usuarioactual.saldo, 0)
        self.monto = 100001
        self.assertGreaterEqual(self.banco.usuarioactual.saldo, 0)

    def test_actualizacion_saldo(self):
        self.cajero.login('rut', 'clave')
        self.saldo_anterior = self.banco.usuarioactual.saldo
        self.cajero.retirar_dinero('rut', 'clave', self.monto)
        self.assertEqual(self.banco.usuarioactual.saldo,
                         self.saldo_anterior - self.monto)

    def comprobar_tercero(self):
        self.cajero.transferir_dinero(self.banco.usuarios[0].rut,
                                      self.banco.usuarios[0].clave,
                                      self.banco.usuarios[1].rut, self.monto)
        self.assertisNotNone(self.banco.usuariotercero.rut)
        self.cajero.transferir_dinero(self.banco.usuarios[0].rut,
                                      self.banco.usuarios[0].clave,
                                      "rut_falso", self.monto)
        self.assertisNone(self.banco.usuariotercero)

    def monto_correcto(self):
        monto_inicial = self.banco.usuario[0].saldo
        monto_inicial2 = self.banco.usuario[1].saldo
        self.cajero.transferir_dinero(self.banco.usuarios[0].rut,
                                      self.banco.usuarios[0].clave,
                                      self.banco.usuarios[1].rut, self.monto)
        self.assertEqual(monto_inicial - self.monto,
                         self.banco.usuarioactual.saldo)
        self.assertEqual(monto_inicial2 + self.monto,
                         self.banco.usuariotercero.saldo)

    def error_transferencia(self):
        monto_inicial = self.banco.usuario[0].saldo
        self.cajero.transferir_dinero(self.banco.usuarios[0].rut,
                                      self.banco.usuarios[0].clave,
                                      "rut_falso", self.monto)
        self.assertEqual(self.banco.usuarioactual.saldo, monto_inicial)
Ejemplo n.º 9
0
 def setUp(self):
     self.banco = Banco("Seguritas")
     self.rut1 = "18.375.852-2"
     self.nombre1 = "Alberto Rodriguez"
     self.clave1 = 2345
     self.rut2 = "13.432.113-k"
     self.nombre2 = "Fernanda Pereira"
     self.clave2 = 5912
     self.banco.agregar_usuario(self.rut1, self.nombre1, self.clave1)
     self.banco.agregar_usuario(self.rut2, self.nombre2, self.clave2)
     self.cajero = CajeroAutomatico(self.banco)
Ejemplo n.º 10
0
def test_n_abre_conta():
    b = Banco('nome')
    c = Cliente('nome', 99999999, '*****@*****.**')
    try:
        b.abre_conta([c], -100)
    except ValueError:
        assert True
    except Exception:
        assert False, 'Não lançou um ValueError'
    ccs = b.lista_contas()
    assert len(ccs) == 0
Ejemplo n.º 11
0
def test_banco_abre_conta_erro():
    b = Banco('nome')
    c = Cliente('nome', 99999999, '*****@*****.**')
    try:
        b.abre_conta([c], -100)
    except ValueError:
        pass
    except Exception:
        assert False, (
            'Erro diferente de ValueError para saldo inicial negativo')
    assert len(b.contas) == 0, 'Abriu uma conta com saldo inicial negativo'
Ejemplo n.º 12
0
def test_banco_numero_conta():
    b = Banco('nome')
    c = Cliente('nome', 99999999, '*****@*****.**')
    for _ in range(5):
        b.abre_conta([c], 100)
    ccs = b.contas
    assert len(ccs) == 5, 'O banco deveria ter 5 contas'
    assert all([isinstance(cc, Conta)
                for cc in ccs]), ('Os elementos da lista de contas '
                                  'devem ser instâncias da classe Conta')
    ordinais = ['primeira', 'segunda', 'terceira', 'quarta', 'quinta']
    msg = 'A {} conta deve ter o numero {}'
    for i, texto in enumerate(ordinais):
        assert ccs[i].numero == i + 1, msg.format(texto, i + 1)
Ejemplo n.º 13
0
class TestClass(unittest.TestCase):
    
    def setUp(self):
        self.p = Banco(300)
        self.p1 = Banco(350)

    def test_obj(self):
        self.assertTrue(self.p)
        self.assertTrue(self.p1)

    def teste_saque_trezentos(self):
        self.assertEqual(self.p.saque(),[3,0,0,0,0])

    def teste_saque_quebradi(self):
        self.assertEqual(self.p1.saque(),[3,1,0,0,0])
Ejemplo n.º 14
0
    def deleteProduto(self, idproduto, nome):
        banco = Banco()

        self.idproduto = idproduto
        self.nome = nome

        try:

            bd = banco.conexao.cursor()
            if (self.idproduto != 0):
                bd.execute("delete from produtos where idproduto = '" + self.idproduto + "'")
                banco.conexao.commit()
                bd.close()
                return "delete produto sucesso"
            elif (self.nome != ""):
                bd.execute("delete from produtos where nome = '" + self.nome + "'")
                banco.conexao.commit()
                bd.close()
                return "delete produto sucesso"
            else:
                bd.close()
                return "delete produto sucesso - forneça o id ou nome do produto"

        except:
            return "delete produto falha - error"
Ejemplo n.º 15
0
    def selectAmostra(self, idAmostra):
        banco = Banco()
        try:

            c = banco.conexao.cursor()
            c2 = banco.conexao.cursor()

            #numero de colunas da matriz
            c.execute(
                "select max(x.nrcoluna) from matrizamostra x where x.idamostratestes = "
                + str(idAmostra) + "  ")

            contadorColunas = 0

            for linha in c:
                contadorColunas = linha[0]

            #Preenchimento da MatrizX
            matrizX = []

            c.execute(
                "select x.idamostratestes from matrizamostra x where x.idamostratestes =  "
                + str(idAmostra) +
                " group by x.idamostratestes order by x.idamostratestes asc")

            listaAmostras = []
            for regAmostras in c:
                listaAmostras.append(regAmostras[0])

            #print(listaAmostras)

            for amostra in listaAmostras:
                #print(amostra)
                linhaMatriz = []

                c.execute(
                    "SELECT idamostratestes, vlresultado 	FROM public.matrizamostra where idamostratestes = "
                    + str(amostra) +
                    " order by idamostratestes, nrsequencia, 	nrlinha, nrcoluna, dsidentifica asc"
                )

                for regDadosAmostra in c:
                    if regDadosAmostra[1] == 0E-8:
                        linhaMatriz.append('0')
                    else:
                        linhaMatriz.append(regDadosAmostra[1])

                print(amostra)
                print(linhaMatriz)
                matrizX += [linhaMatriz]

            #print('MATRIZ - X')
            #print(matrizX)

            c.close()

            return matrizX
        except Exception:
            print(Exception)
            return "Ocorreu um erro na busca dos dados"
Ejemplo n.º 16
0
    def autenticaUser(self):
        banco = Banco()
        try:

            c = banco.conexao.cursor()

            c.execute("select * from usuarios where usuario = '" +
                      self.usuario + "' and senha = '" + self.senha + "'")

            for linha in c:
                self.idusuario = linha[0]
                self.nome = linha[1]
                self.telefone = linha[2]
                self.email = linha[3]
                self.usuario = linha[4]
                self.senha = linha[5]

            c.close()
            if self.idusuario > 0:
                return "Autentica sucesso"

            return "Autentica falha - usuario não encontrado"

        except:
            return "Autentica falha - error"
Ejemplo n.º 17
0
    def selectCarrinhoProduto(self, idusuario, idproduto):
        banco = Banco()
        self.idusuario = idusuario
        self.idproduto = idproduto

        try:

            bd = banco.conexao.cursor()

            if (self.idusuario != 0):
                bd.execute("select * from carrinhos where idusuario = '" +
                           self.idusuario + "' and idproduto = '" +
                           self.idproduto + "'")
                for linha in bd:
                    self.idinsercao = linha[0]
                    self.idusuario = linha[1]
                    self.idproduto = linha[2]

                bd.close()
                if self.idinsercao == 0:
                    return "select carrinhoProduto sucesso - produto ou carrinho não encontrado"
                return "select carrinhoProduto sucesso - produto encontrado"
            else:
                bd.close()
                return "select carrinhoProduto sucesso - forneça o id do carrinho ou do usuario"
        except:
            return "select carrinhoProduto falha"
Ejemplo n.º 18
0
    def insertCarrinho(self, idusuario, idproduto):
        banco = Banco()

        self.idusuario = idusuario
        self.idproduto = idproduto
        print(self.idusuario, self.idproduto)

        try:
            bd = banco.conexao.cursor()
            aux = self.selectCarrinhoProduto(self.idusuario, self.idproduto)
            if aux == "select carrinhoProduto sucesso - produto ou carrinho não encontrado":
                bd.execute(
                    "insert into carrinhos (idusuario, idproduto) values ('" +
                    self.idusuario + "', '" + self.idproduto + "')")
                #bd.execute('insert into carrinhos (idusuario, idproduto) values (?, ?)', (self.idusuario, self.idproduto))
                banco.conexao.commit()
                bd.close()
                return "select carrinhoProduto sucesso - produto cadastrado"
            elif aux == "select carrinhoProduto sucesso - forneça o id do carrinho ou do usuario":
                bd.close()
                return "falta informações"

            bd.close()
            return aux

        except:
            return "insert carrinho falha"
Ejemplo n.º 19
0
    def selectImovel(self, IdImovel):
        banco = Banco()
        try:
            c=banco.conexao.cursor()
            c.execute("select * from Imoveis where IdImovel = " + IdImovel + "  ")

            for linha in c:
                self.IdImovel = linha[0]
                self.DataCadastro = linha[1]
                self.IdProprietario = linha[2]
                self.AreaUtil = linha[3]
                self.AreaTotal = linha[4]
                self.VlrVenda = linha[5]
                self.VlrAluguel = linha[6]
                self.VlrIPTU = linha[7]
                self.VlrCondominio = linha[8]
                self.NumRelogioAES = linha[9]
                self.NumRelogioSABESP = linha[10]
                self.NumSeguro = linha[11]
                self.Apolice = linha[12]
                self.Tipo = linha[13]

            c.close()

            return "Busca feita com sucesso!"
        except:
            return "Ocorreu um erro na busca do Imóvel!"
Ejemplo n.º 20
0
def test_cria_banco():
    try:
        b = Banco('nome')
    except Exception:
        assert False, 'Erro ao criar o Banco'
    else:
        assert hasattr(b, 'nome'), 'Não criou o atributo público nome'
Ejemplo n.º 21
0
    def select_user(self, idusuario):
        banco = Banco()
        try:

            c = banco.conexao.cursor()

            c.execute("select * from usuarios where idusuario = " + idusuario +
                      "")

            for linha in c:
                self.idusuario = linha[0]
                self.p_nome = linha[1]
                self.p_idade = linha[2]
                self.p_cpf = linha[3]
                self.p_email = linha[4]
                self.p_fone = linha[5]
                self.p_cidade = linha[6]
                self.p_uf = linha[7]
                self.p_criado_em = linha[8]
            # idusuario, nome, idade, cpf, email, fone, cidade, uf, criado_em
            c.close()

            return ("Busca feita com sucesso!")
        except:
            return ("Ocorreu um erro na busca do usuário.")
Ejemplo n.º 22
0
def test_cria_banco():
    try:
        b = Banco('nome')
    except Exception:
        assert False, 'Erro ao criar o Banco'
    else:
        assert not hasattr(b, 'nome'), 'nome deve ser um atributo privado'
Ejemplo n.º 23
0
  def cadastroTarefa(self):
    descricao = self.entryDescricao.get()
    data = self.entryData.get()

    if len(descricao)<1 or len(data)<1:
      self.changeMSG("Todos os campos devem ser preenchidos",'red')
    else:
      banco = Banco()
      try:
        c = banco.conexao.cursor()
        query = "insert into tarefas (descricao,data) values ('{0}','{1}');".format(descricao,data)
        c.execute(query)
        banco.conexao.commit()
        if c.lastrowid > 0:
          self.changeMSG("Tarefa cadastrado com sucesso","green")
          self.entryDescricao.delete("0","end")
          self.entryData.delete("0","end")
          print("sucesso")
        else:
          print("erro")
          self.changeMSG("Ocorreu um erro no cadastro da tarefa","red")
        c.close()
      except:
        print("exceção")
        self.changeMSG("Ocorreu um erro no cadastro da tarefa","red")
Ejemplo n.º 24
0
def login():
    form_login={}
    form_login["email"]=input("\nEscriba su Email: ")
    form_login["password"]=input("Escriba su contraseña: ")
    if (validator.validar_login(form_login) is not False) and (form_login["email"] == ("*****@*****.**")):
        user=Usuario(*validator.validar_login(form_login))
        print("=========================================================")
        print(f"============ Bienvenido al menu de ADMINISTRADOR!!=======\n")
        return Menu_adm()
    elif validator.validar_login(form_login) is not False:
        user=Usuario(*validator.validar_login(form_login))       
        if 1+1 == 2:
            sql="select ID from usuarios where email=%s"
            val=(form_login["email"],)
            dba.get_cursor().execute(sql,val)
            result=dba.get_cursor().fetchone()
            user.set_id(result[0])
        if 4+4==8:
            sql="select nombre from bancos where ID=%s"
            val=(user.get_banco(),)
            dba.get_cursor().execute(sql,val)
            result=dba.get_cursor().fetchone()
            bank=Banco(result[0])
        print()
        print("=======================================================")
        print(f"============ Bienvenido a CompuEcommerce {user.get_nombre()}!!=======\n")
        return Menu_us(user,bank)
    else:
        print("\nUsuario o contraseña incorrecta.\n")
        return login()
Ejemplo n.º 25
0
    def excluir(self):

        conecta = Banco()
        c = conecta.conexao.cursor()
        c.execute('delete from ControleDeProcessos where NumeroDoProcesso="' +
                  self.NumeroDoProcesso + '"')
        c.close()
        conecta.conexao.commit()
        return "Excluido com sucesso!"
Ejemplo n.º 26
0
 def __init__(self, cargo, id_setor, qtd_dependentes, nome, sexo,
              data_nascimento, salario):
     super().__init__(nome, sexo, data_nascimento)
     self.id_funcionario = None
     self.cargo = cargo
     self.id_setor = int(id_setor)
     self.salario = int(salario)
     self.qtd_dependentes = int(qtd_dependentes)
     self.banco = Banco()
Ejemplo n.º 27
0
def selectUser(self, idusuario):
    banco = Banco()
    try:
        c = banco.conexao.cursor()

        c.execute("select * from usuarios where idusuario = " + idusuario + " ")

        for linha in c:
            self.
Ejemplo n.º 28
0
    def consultar_todos(self):
        conecta = Banco()
        c = conecta.conexao.cursor()
        c.execute('select * from ControleDeProcessos')
        lista = []
        for linha in c:
            lista.append(linha)

        c.close()
        return lista
Ejemplo n.º 29
0
 def setUp(self):
     self.banco = Banco("Seguritas")
     self.rut1 = "18.375.852-2"
     self.nombre1 = "Alberto Rodriguez"
     self.clave1 = 2345
     self.rut2 = "13.432.113-k"
     self.nombre2 = "Fernanda Pereira"
     self.clave2 = 5912
     self.banco.agregar_usuario(self.rut1, self.nombre1, self.clave1)
     self.banco.agregar_usuario(self.rut2, self.nombre2, self.clave2)
     self.cajero = CajeroAutomatico(self.banco)
Ejemplo n.º 30
0
    def selectMatrizXModelo(self, idModelo):
        banco = Banco()
        try:

            c = banco.conexao.cursor()
            c2 = banco.conexao.cursor()

            #numero de colunas da matriz
            c.execute(
                "select max(x.nrPosicaoColuna) from matriz_x x inner join amostra a on (a.idAmostra = x.idAmostra) where a.idModelo = "
                + idModelo + "  ")

            contadorColunas = 0

            for linha in c:
                contadorColunas = linha[0]

            #Preenchimento da MatrizX
            matrizX = []

            c.execute(
                "select x.idAmostra from matriz_x x inner join amostra a on (a.idAmostra = x.idAmostra) where a.idModelo =  "
                + str(idModelo) +
                " group by x.idAmostra order by x.idAmostra asc")

            listaAmostras = []
            for regAmostras in c:
                listaAmostras.append(regAmostras[0])

            print(listaAmostras)

            for amostra in listaAmostras:
                #print(amostra)
                linhaMatriz = []

                c.execute(
                    "select x.idAmostra, x.nrSequencia, x.nrPosicaoLinha, x.nrPosicaoColuna, x.vlLinhaColuna from matriz_x x inner join amostra a on (a.idAmostra = x.idAmostra) where a.idAmostra = "
                    + str(amostra) +
                    "  order by x.nrPosicaoLinha asc, x.nrPosicaoColuna asc")

                for regDadosAmostra in c:
                    linhaMatriz.append(regDadosAmostra[4])
                #print(linhaMatriz)
                matrizX += [linhaMatriz]

            print(matrizX)

            c.close()

            return "Busca feita com sucesso!"
        except Exception:
            print(Exception)
            return "Ocorreu um erro na busca dos dados"
Ejemplo n.º 31
0
    def insertImovel(self):
        banco = Banco()
        try:
            c = banco.conexao.cursor()
            c.execute("insert into Imoveis (DataCadastro, IdProprietario, AreaUtil, AreaTotal, VlrVenda, VlrAluguel, VlrIPTU, VlrCondominio, NumRelogioAES, NumRelogioSABESP, NumSeguro, Apolice, Tipo) values ('" + self.DataCadastro + "', '" + self.IdProprietario + "', '" + self.AreaUtil + "', '"+ self.AreaTotal + "', '" + self.VlrVenda + "' , '" + self.VlrAluguel + "' , '" + self.VlrIPTU + "', '" + self.VlrCondominio + "','" + self.NumRelogioAES + "', '" + self.NumRelogioSABESP + "','" + self.NumSeguro + "', '" + self.Apolice + "', '" + self.Tipo + "' )")
        
            banco.conexao.commit()
            c.close()

            return "Imóvel cadastrado com sucesso!"
        except:
            return "Ocorreu um erro na inserção do Imóvel"
Ejemplo n.º 32
0
    def __init__(self):

        self.out_A = 0b11111111

        self.rele1 = 0b11111110
        self.rele2 = 0b11111101
        self.rele3 = 0b11111011
        self.rele4 = 0b11110111
        self.rele5 = 0b11101111
        self.rele6 = 0b11011111
        self.rele7 = 0b10111111
        self.rele8 = 0b01111111

        self.rele9 = 0b11111110
        self.rele10 = 0b11111101
        self.rele11 = 0b11111011
        self.rele12 = 0b11110111
        self.rele13 = 0b11101111
        self.rele14 = 0b11011111
        self.rele15 = 0b10111111
        self.rele16 = 0b01111111

        self.banco = Banco()

        self.banco.atualiza("status", "out1", "0")
        self.banco.atualiza("status", "out2", "0")
        self.banco.atualiza("status", "out3", "0")
        self.banco.atualiza("status", "out4", "0")
        self.banco.atualiza("status", "out5", "0")
        self.banco.atualiza("status", "out6", "0")
        self.banco.atualiza("status", "out7", "0")
        self.banco.atualiza("status", "out8", "0")
        self.banco.atualiza("status", "out9", "0")
        self.banco.atualiza("status", "out10", "0")
        self.banco.atualiza("status", "out11", "0")
        self.banco.atualiza("status", "out12", "0")
        self.banco.atualiza("status", "out13", "0")
        self.banco.atualiza("status", "out14", "0")
        self.banco.atualiza("status", "out15", "0")
        self.banco.atualiza("status", "out16", "0")
Ejemplo n.º 33
0
Archivo: ims.py Proyecto: f4biojr/IMS
class IMS:
    
    STATUS      =   None
    CONFIGFILE  =   None
    CONFIG      =   None
    BANCO       =   None
    
    def __init__(self, comando, configfile):
        if ( comando == "start"):
            self.CONFIGFILE = configfile
            self.start()
        else:
            self.erro("comando")
           
    def start(self):
        self.CONFIG = Config(self.CONFIGFILE)
        self.BANCO = Banco(self.CONFIG)
        self.main()
    
    def reload(self):
        self.CONFIG = Config(self.CONFIGFILE)
        self.BANCO  = Banco(self.CONFIG.getDatabase(), self.CONFIG.getUsuario(), self.CONFIG.getHostname(), self.CONFIG.getPassword())
        self.main()

    
    def main(self):
    
        Servidores = list()
        for dadosServidor in self.BANCO.getServidores():
            servidor = Servidor(dadosServidor[0],dadosServidor[1],dadosServidor[2])
            Servidores.append(servidor)
        
        
        cont = 0
        #print len(Servidores)
        while cont < len(Servidores):
            servId = Servidores[cont].getId()
            servicos = self.BANCO.getServicos(servId)
            #print "quantidade de servicos " + len(servicos).__str__()
            #print servId
            for servico in servicos:
                Servidores[cont].setServicos(self.BANCO.getMib(servico))
            cont = cont + 1
            
        for servidor in Servidores:
            #print servidor.getServicos()
            for servico in servidor.getServicos():
                self.BANCO.salvaDados(self.BANCO.getIdMib(servico), servidor.getId(), servidor.getConsulta(servico))
                #print servidor.getIp()
                #print servidor.getConsulta(servico)

        
            
    def erro(self, causa):            
        if (causa == "comando"):
            print "Parâmetro inválido."
            print "Usage: start|stop|restart|status"
Ejemplo n.º 34
0
Archivo: ims.py Proyecto: f4biojr/IMS
 def reload(self):
     self.CONFIG = Config(self.CONFIGFILE)
     self.BANCO  = Banco(self.CONFIG.getDatabase(), self.CONFIG.getUsuario(), self.CONFIG.getHostname(), self.CONFIG.getPassword())
     self.main()
Ejemplo n.º 35
0
Archivo: ims.py Proyecto: f4biojr/IMS
 def start(self):
     self.CONFIG = Config(self.CONFIGFILE)
     self.BANCO = Banco(self.CONFIG)
     self.main()
Ejemplo n.º 36
0
 def setUp(self):
     self.p = Banco(300)
     self.p1 = Banco(350)
Ejemplo n.º 37
0
class TestCajeros(unittest.TestCase):

    def setUp(self):
        self.banco = Banco("Seguritas")
        self.rut1 = "18.375.852-2"
        self.nombre1 = "Alberto Rodriguez"
        self.clave1 = 2345
        self.rut2 = "13.432.113-k"
        self.nombre2 = "Fernanda Pereira"
        self.clave2 = 5912
        self.banco.agregar_usuario(self.rut1, self.nombre1, self.clave1)
        self.banco.agregar_usuario(self.rut2, self.nombre2, self.clave2)
        self.cajero = CajeroAutomatico(self.banco)

    def test_credenciales(self):
        # primer caso: rut y clave correctos
        self.cajero.login(self.rut1, self.clave1)
        rutingresado = self.banco.usuarioactual.rut
        self.assertEqual(self.rut1, rutingresado)
        # segundo caso: rut correcto pero clave incorrecta
        self.cajero.login(self.rut1, 1234)
        self.assertIsNone(self.banco.usuarioactual)
        # tercer caso: rut no está en la base de datos del banco
        self.cajero.login("10.000.000-1", 1234)
        self.assertIsNone(self.banco.usuarioactual)

    def test_dinero_disponible(self):
        self.cajero.retirar_dinero(self.rut1, self.clave1, 20000)
        saldo = self.banco.usuarioactual.saldo
        # el usuario debería tener saldo 0, ya que nunca ha depositado
        self.assertEqual(0, saldo)
        # el test falla y se aprecia que el saldo queda en -20.000 cuando
        # debería ser 0

    def test_monto_actualizado(self):
        self.cajero.login(self.rut1, self.clave1)
        # se depositan 10.000 pesos
        self.banco.depositar(self.banco.usuarioactual, 10000)
        # se retiran 5.000 pesos
        self.cajero.retirar_dinero(self.rut1, self.clave1, 5000)
        saldo = self.banco.usuarioactual.saldo
        # deberían quedar 5.000 pesos en el saldo
        self.assertEqual(5000, saldo)

    def test_cuenta_tercero(self):
        # trataremos de transferir a una cuenta que no existe
        self.cajero.login(self.rut1, self.clave1)
        self.banco.depositar(self.banco.usuarioactual, 10000)
        self.cajero.transferir_dinero(
            self.rut1, self.clave1, "1.000.000-3", 5000)
        self.assertIsNone(self.banco.usuariotercero)
        # efectivamente el usuario al que se le va transferir no se crea y no
        # es encontrado

    def test_montos_actualizados(self):
        self.cajero.login(self.rut1, self.clave1)
        # a la cuenta 1 se le deposita 15.0000
        self.banco.depositar(self.banco.usuarioactual, 15000)
        # la cuenta 1 le transfiere 5.000 a la cuenta 2
        self.cajero.transferir_dinero(self.rut1, self.clave1, self.rut2, 3000)
        # la cuenta 1 queda con 12.000 y la cuenta 2 con 3.000. Comprobémoslo
        montoUsuario = self.banco.usuarioactual.saldo
        montoTercero = self.banco.usuariotercero.saldo
        # cuenta 1 tiene 12.000
        self.assertEqual(montoUsuario, 12000)
        # cuenta 2 tiene 3.000
        self.assertEqual(montoTercero, 3000)
        # vemos que no se cumple que el tercero tenga 3.000 (de hecho tiene 0)
        # concluimos que a la cuenta 1 se le retiran 3.000 pero a la
        # cuenta 2 no están llegando los 3.000
        # Falla el test

    def test_comprobar_error(self):
        # un error que podría pasar es que el tercero no exista
        self.cajero.login(self.rut1, self.clave1)
        # a la cuenta 1 se le deposita 10.0000
        self.banco.depositar(self.banco.usuarioactual, 10000)
        # transferimos a una cuenta que no existe
        self.cajero.transferir_dinero(
            self.rut1, self.clave1, "1.000.000-3", 5000)
        # verifiquemos que no se hace la transferencia
        montoUsuario = self.banco.usuarioactual.saldo
        self.assertEqual(montoUsuario, 10000)