Source code for betty.test_utils.ancestry

"""
Test utilities for :py:mod:`betty.ancestry`.
"""

from typing_extensions import override

from betty.ancestry import HasDate, HasPrivacy, HasDescription, HasLocale
from betty.json.linked_data import LinkedDataDumpable
from betty.json.schema import Object
from betty.project import Project


class _LinkedDataObjectSchema(LinkedDataDumpable[Object]):
    @override
    @classmethod
    async def linked_data_schema(cls, project: Project) -> Object:
        return Object()


[docs] class DummyHasDate(HasDate, _LinkedDataObjectSchema): """ A dummy :py:class:`betty.ancestry.HasDate` implementation. """ pass
[docs] class DummyHasDescription(HasDescription, _LinkedDataObjectSchema): """ A dummy :py:class:`betty.ancestry.HasDescription` implementation. """ pass
[docs] class DummyHasLocale(HasLocale, _LinkedDataObjectSchema): """ A dummy :py:class:`betty.ancestry.HasLocale` implementation. """ pass
[docs] class DummyHasPrivacy(HasPrivacy, _LinkedDataObjectSchema): """ A dummy :py:class:`betty.ancestry.HasPrivacy` implementation. """ pass