Coverage for /usr/local/lib/python3.14/site-packages/twinpad_backend/responses.py: 100%
10 statements
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-09 13:43 +0000
« prev ^ index » next coverage.py v7.14.1, created at 2026-06-09 13:43 +0000
1from typing import TypeVar, Generic
2from pydantic import BaseModel
4DataT = TypeVar("DataT")
7class ListResponse(BaseModel, Generic[DataT]):
8 limit: int
9 offset: int
10 sort_by: str
11 items: list[DataT]
12 total: int
14 def to_dict(self, exclude=None):
15 """Excludes field on items"""
16 if exclude is None:
17 exclude = {}
18 dict_ = self.model_dump(exclude={"items"})
19 dict_["items"] = [i.to_dict(exclude=exclude) for i in self.items]
20 return dict_