Esempio n. 1
0
def test_adiciona_telefone():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    c.adiciona_telefone("113322-4567", "fixo")
    c.adiciona_telefone("1198888-8888", "celular")
    assert c.get_telefones()['principal'] == TelefoneAtualizado("1199999-9999")
    assert c.get_telefones()['fixo'] == TelefoneAtualizado("113322-4567")
    assert c.get_telefones()['celular'] == TelefoneAtualizado("1198888-8888")
Esempio n. 2
0
def test_cria_contato():
    try:
        c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    except TypeError:
        assert False, "Erro ao criar o contato"
    else:
        assert c.nome == "Aluno", 'O nome foi criado incorretamente'
        assert c.get_telefones()['principal'] == TelefoneAtualizado("1199999-9999")
        assert c.get_emails()['principal'] == Email("*****@*****.**")
        assert isinstance(c.get_telefones()['principal'], Telefone)
        assert isinstance(c.get_emails()['principal'], Email)
Esempio n. 3
0
 def test_07_cria_contato(self):
     c1 = Contato('Rafael', '11999777888', '*****@*****.**')
     assert c1.nome == 'Rafael', 'O nome foi criado incorretamente'
     assert isinstance(c1.get_telefones()['principal'], Telefone), (
         'Objeto adicionado ao dicionário de telefones não é do tipo Telefone'
     )
     assert c1.get_telefones()['principal'] == TelefoneAtualizado(
         '11999777888'), (
             'o telefone não foi salvo com o valor correto no dicionário')
     assert isinstance(c1.get_emails()['principal'], Email), (
         'Objeto adicionado ao dicionário de emails não é do tipo Email')
     assert c1.get_emails()['principal'] == Email('*****@*****.**'), (
         'o email não foi salvo com o valor correto no dicionário')
Esempio n. 4
0
 def test_10_apaga_telefone(self):
     c1 = Contato('Rafael', '11999777888', '*****@*****.**')
     c1.adiciona_telefone('11987654321', 'trabalho')
     telefones = c1.get_telefones()
     assert telefones['principal'] == TelefoneAtualizado('11999777888'), (
         'o telefone não foi salvo com o valor correto no dicionário')
     assert telefones['trabalho'] == TelefoneAtualizado('11987654321'), (
         'o telefone não foi salvo com o valor ou a chave correta no dicionário'
     )
     c1.apaga_telefone('trabalho')
     telefones = c1.get_telefones()
     assert 'trabalho' not in telefones, 'o telefone de trabalho não foi apagado do dicionário'
     assert 'principal' in telefones, (
         'o telefone principal não deveria ter sido apagado do dicionário')
Esempio n. 5
0
def test_apaga_telefone_tipo_nao_existe():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    c.adiciona_telefone("113322-4567", "fixo")
    c.adiciona_telefone("1198888-8888", "celular")
    tipos = ['particular', '1198888-8888', 11988888888]
    for tipo in tipos:
        try:
            c.apaga_telefone(tipo)
        except KeyError:
            pass
        else:
            raise AssertionError("Não levantou erro para chave inexistente")
    assert c.get_telefones()['principal'] == TelefoneAtualizado("1199999-9999")
    assert c.get_telefones()['fixo'] == TelefoneAtualizado("113322-4567")
    assert c.get_telefones()['celular'] == TelefoneAtualizado("1198888-8888")
Esempio n. 6
0
def test_adiciona_outro_telefone_como_principal():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    try:
        c.adiciona_telefone("1198888-8888")
    except ValueError:
        pass
    assert c.get_telefones()['principal'] == TelefoneAtualizado("1198888-8888")
Esempio n. 7
0
def test_get_telefones():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    c.adiciona_telefone("113322-4567", "fixo")
    c.adiciona_telefone("1198888-8888", "celular")
    assert c.get_telefones() == {'principal': TelefoneAtualizado('1199999-9999'),
                                 'fixo': TelefoneAtualizado('113322-4567'),
                                 'celular': TelefoneAtualizado('1198888-8888')}
Esempio n. 8
0
def test_adiciona_telefone_invalido_2():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    try:
        c.adiciona_telefone(1198888, "celular")
        c.adiciona_telefone(11.98888 - 8888, "celular")
    except TypeError:
        pass
    else:
        raise AssertionError('Telefone deve ser do tipo string')
    assert not any(['celular' in c.get_telefones()])
Esempio n. 9
0
def test_adiciona_telefone_invalido_1():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    telefones = [
        ("11332211-456789", "fixo"),
        ("1198888", "celular"),
        ('', "fixo"),
        ("1199-999", "principal"),
        ("1198888")
    ]
    for telefone in telefones:
        try:
            c.adiciona_telefone(telefone[0], telefone[1])
        except ValueError:
            pass
        # except AssertionError:
        #     assert True, 'Telefone pode conter hífens e ter de 8 a 11 dígitos'
        else:
            raise AssertionError('Telefone pode conter hífens e ter de 8 a 11 dígitos')
        assert not any(['fixo' in c.get_telefones()])
        assert not any(['celular' in c.get_telefones()])
Esempio n. 10
0
 def test_09_adiciona_telefone(self):
     c1 = Contato('Rafael', '11999777888', '*****@*****.**')
     c1.adiciona_telefone('11987654321', 'trabalho')
     telefones = c1.get_telefones()
     assert telefones['principal'] == TelefoneAtualizado('11999777888'), (
         'o telefone não foi salvo com o valor correto no dicionário')
     assert telefones['trabalho'] == TelefoneAtualizado('11987654321'), (
         'o telefone não foi salvo com o valor ou a chave correta no dicionário'
     )
     c1.adiciona_telefone('1144556677', 'casa')
     c1.adiciona_telefone('11-999-555-111')
     assert telefones['casa'] == TelefoneAtualizado('1144556677'), (
         'o telefone não foi salvo com o valor ou a chave correta no dicionário'
     )
     assert telefones['principal'] == TelefoneAtualizado('11999555111'), (
         'o telefone principal não foi atualizado no dicionário')
Esempio n. 11
0
 def test_16_get_telefones(self):
     """
     Este teste não será disponibilizado, faça a verificação com base nas
     instruções do enunciado
     """
     # c1 = Contato('Rafael', '11999777888', '*****@*****.**')
     # c2 = Contato('Alex', '11967427007', '*****@*****.**')
     # c1.get_telefones()
     # c2.get_telefones()
     c = Contato("Aluno", "1199999-9999",
                 "*****@*****.**")
     c.adiciona_telefone("113322-4567", "fixo")
     c.adiciona_telefone("1198888-8888", "celular")
     assert c.get_telefones() == {
         'principal': TelefoneAtualizado('1199999-9999'),
         'fixo': TelefoneAtualizado('113322-4567'),
         'celular': TelefoneAtualizado('1198888-8888')
     }