2024-11-08 05:22:13 +00:00
|
|
|
from typing import TYPE_CHECKING, Optional
|
2023-06-09 03:48:56 +00:00
|
|
|
|
|
|
|
import pytest
|
|
|
|
import pytest_asyncio
|
|
|
|
|
|
|
|
from simnet.client.components.diary.starrail import StarrailDiaryClient
|
|
|
|
|
|
|
|
if TYPE_CHECKING:
|
|
|
|
from simnet.client.cookies import Cookies
|
2023-12-27 07:09:24 +00:00
|
|
|
from simnet.utils.enums import Region
|
2023-06-09 03:48:56 +00:00
|
|
|
|
|
|
|
|
|
|
|
@pytest_asyncio.fixture
|
2024-11-08 05:22:13 +00:00
|
|
|
async def diary_client(
|
|
|
|
starrail_player_id: int, region: "Region", cookies: "Cookies", starrail_cookies: Optional["Cookies"]
|
|
|
|
):
|
2023-06-09 03:48:56 +00:00
|
|
|
if starrail_player_id is None:
|
|
|
|
pytest.skip("Test case test_starrail_diary_client skipped: No starrail player id set.")
|
|
|
|
async with StarrailDiaryClient(
|
|
|
|
player_id=starrail_player_id,
|
2024-11-08 05:22:13 +00:00
|
|
|
cookies=starrail_cookies or cookies,
|
2023-06-09 03:48:56 +00:00
|
|
|
region=region,
|
|
|
|
) as client_instance:
|
|
|
|
yield client_instance
|
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
|
|
class TestStarrailDiaryClient:
|
|
|
|
@staticmethod
|
|
|
|
async def test_get_starrail_diary(diary_client: "StarrailDiaryClient"):
|
|
|
|
genshin_diary = await diary_client.get_starrail_diary()
|
|
|
|
assert genshin_diary is not None
|