Coverage for src\utility\models.py: 100%
43 statements
« prev ^ index » next coverage.py v7.10.1, created at 2025-10-19 21:13 +0800
« prev ^ index » next coverage.py v7.10.1, created at 2025-10-19 21:13 +0800
1from datetime import datetime
2from typing import Any, Dict
3from msgspec import Struct
4from pydantic import BaseModel, Field
7class AnimeDataClip(Struct):
8 anime_series_id: int
9 anime_season_id: int
10 count: int
13class AnimeDataMark(Struct):
14 anime_series_id: int
15 anime_season_id: int
16 count: int
19class DramaDataClip(Struct):
20 drama_series_id: int
21 drama_season_id: int
22 count: int
25class DramaDataMark(Struct):
26 drama_series_id: int
27 drama_season_id: int
28 count: int
31class MovieDataClip(Struct):
32 movie_id: int
33 count: int
36class MovieDataMark(Struct):
37 movie_id: int
38 count: int
41class SearchParams(BaseModel):
42 q: str = ""
43 limit: int = Field(10, gt=0, le=100)
44 page: int = Field(1, gt=0, le=10000)
47class ReviewParams(BaseModel):
48 page: int = Field(1, gt=0, le=10000)
51class ListParams(BaseModel):
52 limit: int = Field(10, gt=0, le=100)
53 page: int = Field(1, gt=0, le=10000)
56class SearchResponse(BaseModel):
57 query: str
58 heading: str
59 results: Dict[str, Any]
60 scrape_date: datetime
63class InfoResponse(BaseModel):
64 data: Dict[str, Any]
65 scrape_date: datetime