""" Tests for the ModuleId Value Object. """ from __future__ import annotations from shared.identity import Identifier, ModuleId def test_new_creates_module_id() -> None: """A new ModuleId should be created.""" # Arrange # Act module_id = ModuleId.new() # Assert assert isinstance(module_id, ModuleId) def test_module_id_is_identifier() -> None: """ModuleId should inherit from Identifier.""" # Arrange # Act module_id = ModuleId.new() # Assert assert isinstance(module_id, Identifier) def test_module_id_preserves_type() -> None: """Factory methods should preserve the concrete type.""" # Arrange # Act module_id = ModuleId.new() # Assert assert type(module_id) is ModuleId