Esempio n. 1
0
def test_adiciona_email():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    c.adiciona_email("*****@*****.**", "particular")
    c.adiciona_email("*****@*****.**", "extra")
    assert c.get_emails()['principal'] == Email('*****@*****.**')
    assert c.get_emails()['particular'] == Email('*****@*****.**')
    assert c.get_emails()['extra'] == Email('*****@*****.**')
Esempio n. 2
0
def test_adiciona_outro_email_como_principal():
    c = Contato("Funcionario", "1199999-9999", "*****@*****.**")
    assert c.get_emails()['principal'] == Email("*****@*****.**")
    try:
        c.adiciona_email("*****@*****.**")
    except ValueError:
        pass
    assert c.get_emails()['principal'] == Email("*****@*****.**")
Esempio n. 3
0
def test_apaga_email():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    c.adiciona_email("*****@*****.**", "particular")
    c.adiciona_email("*****@*****.**", "trabalho")
    c.apaga_email('particular')
    c.apaga_email('trabalho')
    assert not any(['particular' in c.get_emails()])
    assert not any(['trabalho' in c.get_emails()])
    assert c.get_emails() == {'principal': Email("*****@*****.**")}
    assert c.get_emails()['principal'] == Email("*****@*****.**")
Esempio n. 4
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. 5
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. 6
0
 def test_13_apaga_email(self):
     c1 = Contato('Rafael', '11999777888', '*****@*****.**')
     c1.adiciona_email('*****@*****.**', 'trabalho')
     emails = c1.get_emails()
     assert emails['principal'] == Email('*****@*****.**'), (
         'o email não foi salvo com o valor correto no dicionário')
     assert emails['trabalho'] == Email('*****@*****.**'), (
         'o email não foi salvo com o valor ou a chave correta no dicionário'
     )
     c1.apaga_email('trabalho')
     emails = c1.get_emails()
     assert 'trabalho' not in emails, 'o email de trabalho não foi apagado do dicionário'
     assert 'principal' in emails, (
         'o email principal não deveria ter sido apagado do dicionário')
Esempio n. 7
0
def test_get_emails():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    c.adiciona_email("*****@*****.**", "particular")
    c.adiciona_email("*****@*****.**", "extra")
    assert c.get_emails() == {'principal': Email("*****@*****.**"),
                              'particular': Email("*****@*****.**"),
                              'extra': Email("*****@*****.**")}
Esempio n. 8
0
def test_adiciona_email_invalido_1():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    emails = [
        '',
        # "aluno [email protected]",
        "amauri@@impacta.com.br",
        # "amauri..impacta.com.br",
        "amauriimpacta.com.br",
        "*****@*****.**",
        # "[email protected]",
        # "a@g",
        # "[email protected]",
        # "*****@*****.**",
        # "*****@*****.**",
        # "ama@[email protected]",
        # "[email protected].",
        # "*****@*****.**",
        #"[email protected]",
        # "@amauriimpacta.com.br",
        # "*****@*****.**",
        # "amauri@[email protected]"
    ]
    for email in emails:
        try:
            c.adiciona_email(email)
        except ValueError:
            pass
        else:
            raise AssertionError('O email deve conter @ e domínio corretamente')
        assert c.get_emails()['principal'] == Email("*****@*****.**")
Esempio n. 9
0
def test_apaga_email_tipo_nao_existe():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    c.adiciona_email("*****@*****.**", "particular")
    c.adiciona_email("*****@*****.**", "trabalho")
    tipos = ['faculdade', 'empresa', 11988888888, '*****@*****.**']
    for tipo in tipos:
        try:
            c.apaga_email(tipo)
        except KeyError:
            pass
        else:
            raise AssertionError("Não levantou erro para chave inexistente")
    assert c.get_emails()['principal'] == Email("*****@*****.**")
    assert c.get_emails()['particular'] == Email("*****@*****.**")
    assert c.get_emails()['trabalho'] == Email("*****@*****.**")
    assert c.get_emails() == {'principal': Email("*****@*****.**"),
                              'particular': Email("*****@*****.**"),
                              'trabalho': Email("*****@*****.**")}
Esempio n. 10
0
def test_adiciona_email_invalido_2():
    c = Contato("Aluno", "1199999-9999", "*****@*****.**")
    for email in [123, 12.30]:
        try:
            c.adiciona_email(email)
        except TypeError:
            pass
        else:
            raise AssertionError('Email deve ser do tipo string')
        assert c.get_emails()['principal'] == Email("*****@*****.**")
Esempio n. 11
0
 def test_12_adiciona_email(self):
     c1 = Contato('Rafael', '11999777888', '*****@*****.**')
     c1.adiciona_email('*****@*****.**', 'trabalho')
     emails = c1.get_emails()
     assert emails['principal'] == Email('*****@*****.**'), (
         'o email não foi salvo com o valor correto no dicionário')
     assert emails['trabalho'] == Email('*****@*****.**'), (
         'o email não foi salvo com o valor ou a chave correta no dicionário'
     )
     c1.adiciona_email('*****@*****.**', 'jogos')
     c1.adiciona_email('*****@*****.**')
     assert emails['jogos'] == Email('*****@*****.**'), (
         'o email não foi salvo com o valor ou a chave correta no dicionário'
     )
     assert emails['principal'] == Email('*****@*****.**'), (
         'o email principal não foi atualizado no dicionário')