This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
"""
|
||||
Simplified unit tests for abstract document elements using test mixins.
|
||||
|
||||
This demonstrates how test mixins can eliminate duplication and simplify tests.
|
||||
"""
|
||||
|
||||
import unittest
|
||||
from pyWebLayout.abstract.document import Document, Chapter
|
||||
from tests.mixins.font_registry_tests import FontRegistryTestMixin, FontRegistryParentDelegationTestMixin
|
||||
from tests.mixins.metadata_tests import MetadataContainerTestMixin
|
||||
|
||||
|
||||
class TestDocumentFontRegistry(FontRegistryTestMixin, unittest.TestCase):
|
||||
"""Test FontRegistry behavior for Document - simplified with mixin."""
|
||||
|
||||
def create_test_object(self):
|
||||
"""Create a Document instance for testing."""
|
||||
return Document("Test Document", "en-US")
|
||||
|
||||
|
||||
class TestDocumentMetadata(MetadataContainerTestMixin, unittest.TestCase):
|
||||
"""Test MetadataContainer behavior for Document - simplified with mixin."""
|
||||
|
||||
def create_test_object(self):
|
||||
"""Create a Document instance for testing."""
|
||||
return Document("Test Document", "en-US")
|
||||
|
||||
|
||||
class TestChapterFontRegistry(FontRegistryTestMixin, unittest.TestCase):
|
||||
"""Test FontRegistry behavior for Chapter - simplified with mixin."""
|
||||
|
||||
def create_test_object(self):
|
||||
"""Create a Chapter instance for testing."""
|
||||
return Chapter("Test Chapter", level=1)
|
||||
|
||||
|
||||
class TestChapterFontRegistryParentDelegation(FontRegistryParentDelegationTestMixin, unittest.TestCase):
|
||||
"""Test FontRegistry parent delegation for Chapter - simplified with mixin."""
|
||||
|
||||
def create_parent(self):
|
||||
"""Create a Document as parent."""
|
||||
return Document("Parent Document", "en-US")
|
||||
|
||||
def create_child(self, parent):
|
||||
"""Create a Chapter with parent reference."""
|
||||
return Chapter("Child Chapter", level=1, parent=parent)
|
||||
|
||||
|
||||
class TestChapterMetadata(MetadataContainerTestMixin, unittest.TestCase):
|
||||
"""Test MetadataContainer behavior for Chapter - simplified with mixin."""
|
||||
|
||||
def create_test_object(self):
|
||||
"""Create a Chapter instance for testing."""
|
||||
return Chapter("Test Chapter", level=1)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
Reference in New Issue
Block a user