Coverage for src/tests/modules/portal/test_get_news_items.py: 100%

13 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2024-01-01 00:00 +0000

1"""Module for testing the use case get_stories.""" 

2 

3import pytest 

4 

5from kwai_bc_portal.domain.news_item import NewsItemEntity 

6from kwai_bc_portal.get_news_items import GetNewsItems, GetNewsItemsCommand 

7from kwai_bc_portal.news.news_item_db_repository import NewsItemDbRepository 

8from kwai_core.db.database import Database 

9from kwai_core.domain.presenter import CountIterableAsyncPresenter 

10 

11 

12pytestmark = pytest.mark.db 

13 

14 

15async def test_get_stories(database: Database, make_news_item_in_db): 

16 """Test the use case: get stories.""" 

17 await make_news_item_in_db() 

18 

19 command = GetNewsItemsCommand() 

20 presenter = CountIterableAsyncPresenter[NewsItemEntity]() 

21 await GetNewsItems(NewsItemDbRepository(database), presenter).execute(command) 

22 

23 assert presenter.count >= 0, "Count must be 0 or greater"