fix(tests): Resolve pyright type errors in anilist test_mapper.py

Updated mock data in `test_to_generic_user_profile_success` to conform to `AnilistViewerData` requirements.
Adjusted type annotations in tests with intentionally malformed data to `Any` to prevent pyright errors, ensuring proper validation of error handling.
This commit is contained in:
Albert Medrano-Lopez
2025-12-29 23:01:24 -08:00
parent 0ca63dd765
commit efa6f4d142

View File

@@ -1,3 +1,5 @@
from typing import Any
from viu_media.libs.media_api.anilist.mapper import to_generic_user_profile from viu_media.libs.media_api.anilist.mapper import to_generic_user_profile
from viu_media.libs.media_api.anilist.types import AnilistViewerData from viu_media.libs.media_api.anilist.types import AnilistViewerData
from viu_media.libs.media_api.types import UserProfile from viu_media.libs.media_api.types import UserProfile
@@ -9,8 +11,14 @@ def test_to_generic_user_profile_success():
"Viewer": { "Viewer": {
"id": 123, "id": 123,
"name": "testuser", "name": "testuser",
"avatar": {"large": "https://example.com/avatar.png"}, "avatar": {
"large": "https://example.com/avatar.png",
"medium": "https://example.com/avatar_medium.png",
"extraLarge": "https://example.com/avatar_extraLarge.png",
"small": "https://example.com/avatar_small.png",
},
"bannerImage": "https://example.com/banner.png", "bannerImage": "https://example.com/banner.png",
"token": "test_token",
} }
} }
} }
@@ -23,24 +31,24 @@ def test_to_generic_user_profile_success():
def test_to_generic_user_profile_data_none(): def test_to_generic_user_profile_data_none():
data = {"data": None} data: Any = {"data": None}
profile = to_generic_user_profile(data) profile = to_generic_user_profile(data)
assert profile is None assert profile is None
def test_to_generic_user_profile_no_data_key(): def test_to_generic_user_profile_no_data_key():
data = {"errors": [{"message": "Invalid token"}]} data: Any = {"errors": [{"message": "Invalid token"}]}
profile = to_generic_user_profile(data) profile = to_generic_user_profile(data)
assert profile is None assert profile is None
def test_to_generic_user_profile_no_viewer_key(): def test_to_generic_user_profile_no_viewer_key():
data: AnilistViewerData = {"data": {"Page": {}}} data: Any = {"data": {"Page": {}}}
profile = to_generic_user_profile(data) profile = to_generic_user_profile(data)
assert profile is None assert profile is None
def test_to_generic_user_profile_viewer_none(): def test_to_generic_user_profile_viewer_none():
data: AnilistViewerData = {"data": {"Viewer": None}} data: Any = {"data": {"Viewer": None}}
profile = to_generic_user_profile(data) profile = to_generic_user_profile(data)
assert profile is None assert profile is None