Skip to content

Commit c991b9b

Browse files
author
renzon
committed
Criado teste de exceção
1 parent 5f8d6b1 commit c991b9b

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
11
class Enviador:
22
def enviar(self, remetente, destinatario, assunto, corpo):
3+
if '@' not in remetente:
4+
raise EmailInvalido(f'Email de remetente inválido: {remetente}')
35
return remetente
6+
7+
8+
class EmailInvalido(Exception):
9+
pass

libpythonpro/tests/test_spam/test_enviador_de_email.py

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import pytest
22

3-
from libpythonpro.spam.enviador_de_email import Enviador
3+
from libpythonpro.spam.enviador_de_email import Enviador, EmailInvalido
44

55

66
def test_criar_enviador_de_email():
@@ -21,3 +21,18 @@ def test_remetente(remetente):
2121
'Primeira turma Guido Von Rossum aberta.'
2222
)
2323
assert remetente in resultado
24+
25+
26+
@pytest.mark.parametrize(
27+
'remetente',
28+
['', 'renzo']
29+
)
30+
def test_remetente_invalido(remetente):
31+
enviador = Enviador()
32+
with pytest.raises(EmailInvalido):
33+
enviador.enviar(
34+
remetente,
35+
'luciano@python.pro.br',
36+
'Cursos Python Pro',
37+
'Primeira turma Guido Von Rossum aberta.'
38+
)

0 commit comments

Comments
 (0)