Skip to content

Commit 75c6e10

Browse files
committed
chore: Adapts tests to run w/ Makefile
1 parent e92a44d commit 75c6e10

File tree

4 files changed

+45
-9
lines changed

4 files changed

+45
-9
lines changed

Makefile

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
.phony:
2+
test
3+
4+
5+
tests:
6+
@echo "*** `tests` directory should exist at project root. Stop."
7+
8+
db-migration:
9+
alembic -x data=true downgrade base
10+
alembic -x data=true upgrade head
11+
12+
test-unit:
13+
pytest --color=yes --showlocals --tb=short -v tests/auth/unit
14+
15+
test-integration:
16+
pytest --color=yes --showlocals --tb=short -v tests/auth/integration
17+
18+
test-e2e:
19+
pytest --color=yes --showlocals --tb=short -v tests/auth/e2e
20+
21+
test: tests db-migration test-unit test-integration test-e2e
22+

tests/auth/integration/test_email_sender.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
from tests.auth import helpers
2-
from src.auth.adapters import email_sender
2+
# from src.auth.adapters import email_sender
3+
from tests.fakes import auth as fakes
34

45

56
def test_send_email():
6-
sender = email_sender.EmailSender()
7+
sender = fakes.FakeEmailSender()
78
response = sender.send_email(
89
email_to=helpers.TEST_USER_EMAIL,
910
subject=helpers.random_word(),

tests/auth/unit/test_handlers.py

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
from tests.auth import helpers
2+
# from src.auth.adapters import email_sender
3+
from tests.fakes import auth as fakes
4+
5+
6+
def test_send_email(fake_dependencies):
7+
sender = fakes.FakeEmailSender()
8+
response = sender.send_email(
9+
email_to=helpers.TEST_USER_EMAIL,
10+
subject=helpers.random_word(),
11+
template=helpers.random_word(),
12+
)
13+
assert response == 250

tests/fakes/auth.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
from typing import List, Optional, Generator, Any, Callable
22

3-
from craftship.core.ports import unit_of_work, repository, email_sender
4-
from craftship.core.domain import Aggregate
5-
from craftship.auth.domain import model
3+
from src.core.ports import unit_of_work, repository, email_sender
4+
from src.core.domain import Aggregate
5+
from src.auth.domain import model
66

7-
from apolo import config
7+
from src import config
88

99

1010
class FakeUserRepository(repository.AbstractRepository):
@@ -84,18 +84,18 @@ def collect_new_events(self) -> Generator:
8484

8585

8686
class FakeEmailSender(email_sender.AbstractEmailSender):
87-
sent: bool = False
87+
sent: bool
8888

8989
def __init__(self):
90-
pass
90+
self.sent = False
9191

9292
def send_email(
9393
self,
9494
email_to: str,
9595
subject: str,
9696
template: str,
9797
) -> int:
98-
FakeEmailSender.sent = True
98+
self.sent = True
9999
return 250
100100

101101

0 commit comments

Comments
 (0)