Coverage for src/tests/modules/portal/test_delete_news_item.py: 100%
17 statements
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2024-01-01 00:00 +0000
1"""Module for testing the use case "Delete News Item"."""
3import pytest
5from kwai_bc_portal.delete_news_item import DeleteNewsItem, DeleteNewsItemCommand
6from kwai_bc_portal.domain.news_item import NewsItemEntity
7from kwai_bc_portal.get_news_item import GetNewsItem, GetNewsItemCommand
8from kwai_bc_portal.news.news_item_db_repository import NewsItemDbRepository
9from kwai_bc_portal.news.news_item_repository import NewsItemNotFoundException
10from kwai_core.db.database import Database
11from kwai_core.domain.presenter import EntityPresenter
14async def test_delete_news_item(database: Database, make_news_item_in_db):
15 """Test delete news item."""
16 repo = NewsItemDbRepository(database)
17 news_item = await make_news_item_in_db()
18 command = DeleteNewsItemCommand(id=news_item.id.value)
19 await DeleteNewsItem(repo).execute(command)
21 presenter = EntityPresenter[NewsItemEntity]()
22 get_command = GetNewsItemCommand(id=news_item.id.value)
23 with pytest.raises(NewsItemNotFoundException):
24 await GetNewsItem(repo, presenter).execute(get_command)