Skip to content

Commit

Permalink
테스트 세션을 시작하면 테스트 컨테이너를 통해 객체를 구성하고, 테스트 케이스에서 이를 사용
Browse files Browse the repository at this point in the history
  • Loading branch information
qodot committed Oct 3, 2023
1 parent 205f1b1 commit 0e1402e
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 14 deletions.
10 changes: 10 additions & 0 deletions test/appl/conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
from test.appl.container import compose_container
from test.appl.container import container as _container

import pytest


@pytest.fixture(scope="session")
def container():
compose_container()
return _container
10 changes: 4 additions & 6 deletions test/appl/test_create_calendar.py
Original file line number Diff line number Diff line change
@@ -1,18 +1,16 @@
import datetime

from src.appl.container import Container
from src.appl.create_calendar import CreateCalendar
from src.infra.db.mapper import map_between_model_and_schema
from src.appl.i_container import IContainer


class TestCreateCalendar:
def test_run(self):
map_between_model_and_schema()
container = Container()
container.compose()
def test_run(self, container: IContainer):
command = container.resolve(CreateCalendar)

name = "고도"
birthday = datetime.date(1988, 6, 21)
lifespan = 80
command.run(name, birthday, lifespan)

assert command.calendar_repo.save.call_count == 1
12 changes: 4 additions & 8 deletions test/appl/test_update_calendar.py
Original file line number Diff line number Diff line change
@@ -1,19 +1,15 @@
import datetime
from unittest.mock import MagicMock

from src.appl.i_container import IContainer
from src.appl.update_calendar import UpdateCalendar
from src.domain.entity.calendar import Calendar
from src.domain.repo.i_calendar_repo import ICalendarRepo
from src.domain.repo.i_db_context import IDBContext


class TestUpdateCalendar:
def test_run(self):
def test_run(self, container: IContainer):
command = container.resolve(UpdateCalendar)
calendar = self._create_calendar()
db_context = MagicMock(spec=IDBContext)
calendar_repo = MagicMock(spec=ICalendarRepo)
calendar_repo.get_or_error.return_value = calendar
command = UpdateCalendar(db_context, calendar_repo)
command.calendar_repo.get_or_error.return_value = calendar

name = "뉴고도"
birthday = datetime.date(2000, 6, 21)
Expand Down

0 comments on commit 0e1402e

Please sign in to comment.