Coverage for src/epublib/package/guide.py: 100%
12 statements
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-07 10:25 -0300
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-07 10:25 -0300
1from dataclasses import dataclass
2from typing import Annotated, ClassVar, override
4from epublib.xml_element import HrefElement, ParentOfHref, XMLAttribute
7@dataclass(kw_only=True)
8class GuideItem(HrefElement):
9 """An item in the EPUB guide (legacy feature)."""
11 type: Annotated[str, XMLAttribute()]
12 title: Annotated[str, XMLAttribute()]
14 tag_name: ClassVar[str] = "reference"
17class BookGuide(ParentOfHref[GuideItem]):
18 """The EPUB spine, which defines the linear reading order of the book."""
20 @override
21 def add(self, filename: str, title: str, type: str): # type: ignore[reportIncompatibleMethodOverride]
22 return super().add(filename=filename, title=title, type=type)