def teste_criar_proprietario(self):
     p = Proprietario(nome="Daniel",cpf="130.978.257-11",endereco="Endereco",telefone="99999999")
     p.nome |should| equal_to("Daniel")
     p.cpf |should| equal_to("130.978.257-11")
     p.endereco |should| equal_to("Endereco")
     p.telefone |should| equal_to("99999999")
     p.retornar_proprietarios() |should| have(1).itens #Testando lista "Proprietario.proprietarios"
 def teste_retornar_imoveis_disponiveis(self):
     p = Proprietario(nome="Maickon",cpf="321.422.032-13",endereco="Endereco",telefone="99999999")        
     imovel = Imovel(endereco="28 de Março",bairro="Centro",area=700.0,descricao="Casa",proprietario=p)
     p.vender_imovel("28 de Março")        
     imovel.retornar_imoveis_disponiveis() |should| have(1).itens             
     imovel.retornar_imoveis_disponiveis()[0].bairro |should| equal_to("Centro")
     imovel.retornar_imoveis_disponiveis()[0].endereco |should| equal_to("28 de Março")
     imovel.retornar_imoveis_disponiveis()[0].area |should| equal_to(700.0)
     imovel.retornar_imoveis_disponiveis()[0].descricao |should| equal_to("Casa")
     imovel.retornar_imoveis_disponiveis()[0].proprietario_antigo.nome |should| equal_to("Maickon")
     imovel.retornar_imoveis_disponiveis()[0].proprietario_atual |should| equal_to("IMOR Tal")
 def teste_vender_imovel(self):
     p = Proprietario(nome="Tereza",cpf="321.422.032-13",endereco="Endereco",telefone="99999999") #Cadastrando proprietario
     (p.vender_imovel,"28 de Março") |should| throw(ImovelNaoEncontrado)
     imovel = Imovel(endereco="28 de Março",bairro="Centro",area=700.0,descricao="Casa",proprietario=p) #Cadastrando imovel
     Imovel.imovel_interesse |should| have(1).itens
     imovel_vendido = p.vender_imovel("28 de Março")
     imovel_vendido.bairro |should| equal_to("Centro")
     Imovel.imovel_interesse |should| have(0).itens
     Imovel.imovel_disponivel |should| have(1).itens
     imovel_vendido.proprietario_antigo.nome |should| equal_to("Tereza")
     imovel_vendido.proprietario_atual |should| equal_to("IMOR Tal")
 def teste_retornar_imoveis_vendidos(self):
     p = Proprietario(nome="Daniel",cpf="130.978.257-11",endereco="Endereco",telefone="99999999")        
     imovel = Imovel(endereco="Dr. Manoel Landin 247",bairro="Alphaville",area=500.0,descricao="Casa",proprietario=p) 
     p2 = Proprietario(nome="Luiz",cpf="cpf",endereco="Endereco",telefone="99999999")        
     p2.comprar_imovel(p.vender_imovel("Dr. Manoel Landin 247")) 
     imovel.retornar_imoveis_vendidos() |should| have(1).itens             
     imovel.retornar_imoveis_vendidos()[0].bairro |should| equal_to("Alphaville")
     imovel.retornar_imoveis_vendidos()[0].endereco |should| equal_to("Dr. Manoel Landin 247")
     imovel.retornar_imoveis_vendidos()[0].area |should| equal_to(500.0)
     imovel.retornar_imoveis_vendidos()[0].descricao |should| equal_to("Casa")
     imovel.retornar_imoveis_vendidos()[0].proprietario_antigo.nome |should| equal_to("Daniel")
     imovel.retornar_imoveis_vendidos()[0].proprietario_atual.nome |should| equal_to("Luiz")
 def teste_retornar_super_vendedores(self): #Retorna proprietários que venderam mais de um imovel para a imobiliária.
     p = Proprietario(nome="Tereza",cpf="321.422.032-13",endereco="Endereco",telefone="99999999")
     p.retornar_super_vendedores |should| throw(ProprietarioNaoEncontrado)
     imovel = Imovel(endereco="28 de Março",bairro="Centro",area=700.0,descricao="Casa",proprietario=p) #Cadastrando primeiro imovel
     imovel2 = Imovel(endereco="Pelinca",bairro="Centro",area=1200.0,descricao="Casa",proprietario=p)   #Cadastrando segundo imovel     
     p.vender_imovel("28 de Março") #Vendendo primerio imovel
     p.vender_imovel("Pelinca")     #Vendendo segundo imovel
     p.retornar_super_vendedores() |should| have(1).itens
     p.retornar_super_vendedores()[0].nome |should| equal_to("Tereza")
 def teste_comprar_imovel(self):
     p = Proprietario(nome="Tereza",cpf="321.422.032-13",endereco="Endereco",telefone="99999999") #Cadastrando proprietario_antigo
     p2 = Proprietario(nome="Carla",cpf="cpf",endereco="Endereco",telefone="22222222") #Cadastrando proprietario_atual        
     imovel = Imovel(endereco="28 de Março",bairro="Centro",area=700.0,descricao="Casa",proprietario=p) #Cadastrando imovel lista imovel_interesse
     p.vender_imovel("28 de Março").bairro |should| equal_to("Centro") #Proprietario vende o imovel pra imobiliaria
     imovel.retornar_imoveis_disponiveis() |should| have(1).itens
     imovel.retornar_imoveis_disponiveis()[0].bairro |should| equal_to("Centro") 
     imovel_vendido = p2.comprar_imovel(imovel.retornar_imoveis_disponiveis()[0]) #Proprietario p2(Carla) compra o imovel; Funcao retorna o ultimo imovel da lista Imovel.imovel_vendido
     Imovel.imovel_disponivel |should| have(0).itens 
     Imovel.imovel_vendido |should| have(1).itens
     imovel_vendido.bairro |should| equal_to("Centro") 
     imovel_vendido.proprietario_atual.nome |should| equal_to("Carla")
     imovel_vendido.proprietario_antigo.nome |should| equal_to("Tereza")
Example #7
0
    def cadastrar_veiculo(self, nome, matricula, curso, placa, modelo,
                          categoria):
        if self.validar_veiculo(placa.upper()) == None:
            #cadastra o proprietário no dicionario e no BD
            prop = Proprietario(nome.upper(), matricula.upper(), curso.upper())
            c.execute(
                'CREATE TABLE IF NOT EXISTS proprietarios(placa TEXT PRIMARY KEY, nome TEXT, matricula TEXT, curso TEXT)'
            )
            c.execute('INSERT INTO proprietarios VALUES (?, ?, ?,?)',
                      (placa.upper(), prop.get_nome(), prop.get_matricula(),
                       prop.get_curso()))
            con.commit()
            self.armazenar_proprietarios()

            #Cadastra o veiculo no dicionario e no array
            veic = Veiculo(placa.upper(), prop.get_nome(), modelo.upper(),
                           categoria.upper())
            c.execute(
                'CREATE TABLE IF NOT EXISTS veiculos(placa TEXT PRIMARY KEY, proprietario TEXT, modelo TEXT, categoria TEXT)'
            )
            c.execute('INSERT INTO veiculos VALUES (?, ?, ?,?)',
                      (veic.get_placa(), prop.get_nome(), veic.get_modelo(),
                       veic.get_categoria()))
            con.commit()
            self.armazenar_veiculos()
        else:
            print('Veículo já está cadastrado!')
            resposta = input('Deseja cadastrá-lo novamente? (S/N) ')
            if resposta.upper() == 'S':
                self.remover_veiculo(placa.upper())
                self.cadastrar_veiculo(input('Nome: '), input('Matícula: '),
                                       input('Curso: '), input('Placa: '),
                                       input('Modelo: '), input('Categoria: '))
Example #8
0
 def armazenar_proprietarios(self):
     c.execute("SELECT * FROM proprietarios ")
     for linha in c.fetchall():
         placa = linha[0]
         nome = linha[1]
         matricula = linha[2]
         curso = linha[3]
         prop = Proprietario(nome, matricula, curso)
         self.cadastro_proprietarios[placa] = prop
    def cadastrar_veiculo(self, nome, matricula, curso, placa, modelo,
                          categoria):
        '''Este método irá instanciar o objeto proprietário e o objeto veículo a partir de uma única solicitacao ao usuario.'''

        # primeiro valida se o veículo já existe no cadastro.
        if self.validar_veiculo(placa.upper()) == None:
            # cadastra o proprietário no dicionario e no BD
            prop = Proprietario(nome.upper(), matricula.upper(), curso.upper())
            self.cadastro_proprietarios[placa.upper()] = prop
            c.execute(
                'CREATE TABLE IF NOT EXISTS proprietarios(placa TEXT PRIMARY KEY, nome TEXT, matricula TEXT, curso TEXT)'
            )
            c.execute('INSERT INTO proprietarios VALUES (?, ?, ?,?)',
                      (placa.upper(), prop.get_nome(), prop.get_matricula(),
                       prop.get_curso()))
            con.commit()

            # Cadastra o veiculo no array e no BD
            veic = Veiculo(placa.upper(), prop.get_nome(), modelo.upper(),
                           categoria.upper())

            try:
                c.execute(
                    'CREATE TABLE IF NOT EXISTS veiculos(placa TEXT PRIMARY KEY, proprietario TEXT, modelo TEXT, categoria TEXT)'
                )
                c.execute('INSERT INTO veiculos VALUES (?, ?, ?,?)',
                          (veic.get_placa(), prop.get_nome(),
                           veic.get_modelo(), veic.get_categoria()))
                con.commit()
                self.cadastro_veiculos.append(veic)
                print("Veículo cadastrado com sucesso")
            except:
                print("Erro ao cadastrar veículo!")

        else:
            print('Veículo já está cadastrado!')
            resposta = input('Deseja cadastrá-lo novamente? (S/N) ')
            if resposta.upper() == 'S':
                self.remover_veiculo(placa.upper())
                self.cadastrar_veiculo(input('Nome: '), input('Matícula: '),
                                       input('Curso: '), input('Placa: '),
                                       input('Modelo: '), input('Categoria: '))
 def teste_retornar_super_compradores(self):
     p = Proprietario(nome="carlos", cpf="987.994.321-12", endereco="Endereco", telefone="98989898")
     p.retornar_super_compradores |should| throw(ProprietarioNaoEncontrado)        
     imovel = Imovel(endereco="rua 22", bairro="centro", area=800.0, descricao="casa", proprietario=p)
     imovel2 = Imovel(endereco="rua 42", bairro="centro", area=600.0, descricao="casa", proprietario=p)
     p.vender_imovel("rua 22")        
     p.vender_imovel("rua 42")
     Imovel.imovel_disponivel |should| have(2).itens
     Imovel.imovel_disponivel[0].endereco |should| equal_to("rua 22")
     Imovel.imovel_disponivel[1].endereco |should| equal_to("rua 42")
     p2 = Proprietario(nome="lucas", cpf="432.987.665-77", endereco="rua 71", telefone="67654321")
     p2.comprar_imovel(Imovel.imovel_disponivel[0])
     p2.imoveis_comprados |should| equal_to(1)
     p2.comprar_imovel(Imovel.imovel_disponivel[0])
     p2.imoveis_comprados |should| equal_to(2)
     Proprietario.proprietarios |should| have(2).itens
     Proprietario.proprietarios[1].imoveis_comprados |should| equal_to(2)
     imovel.retornar_imoveis_disponiveis() |should| equal_to([])
     p2.retornar_super_compradores() |should| have(1).itens 
     p2.retornar_super_compradores()[0].nome |should| equal_to("lucas")
 def teste_retornar_proprietarios(self):
     p = Proprietario(nome="Lucas",cpf="cpf",endereco="Endereco",telefone="77777777")
     p.retornar_proprietarios() |should| have(1).itens #retorna a lista de todos os proprietarios.
     p.retornar_proprietarios()[0].nome |should| equal_to("Lucas")