44 lines
791 B
Python
44 lines
791 B
Python
"""
|
|
Tests for the ExecutionId Value Object.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
from shared.identity import ExecutionId, Identifier
|
|
|
|
|
|
def test_new_creates_module_id() -> None:
|
|
"""A new ExecutionId should be created."""
|
|
|
|
# Arrange
|
|
|
|
# Act
|
|
module_id = ExecutionId.new()
|
|
|
|
# Assert
|
|
assert isinstance(module_id, ExecutionId)
|
|
|
|
|
|
def test_module_id_is_identifier() -> None:
|
|
"""ExecutionId should inherit from Identifier."""
|
|
|
|
# Arrange
|
|
|
|
# Act
|
|
module_id = ExecutionId.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 = ExecutionId.new()
|
|
|
|
# Assert
|
|
assert type(module_id) is ExecutionId
|