Orchestrata Ultimate › Tests › Reference › test_diagram_to_code_roundtrip

Tests reference — tests/test_diagram_to_code_roundtrip.py

Module of tests, split out because the directory page would be too large.

Prose pending.

tests/test_diagram_to_code_roundtrip.py

source · 21 tests · 438 lines

Kind Name Line Description
class TestInheritanceArrow 82 Animal <|-- Dog makes Animal a base of Dog.
method TestInheritanceArrow.test_parse_records_base 89
method TestInheritanceArrow.test_generated_code_subclasses 94
method TestInheritanceArrow.test_roundtrip_inheritance_via_forward_generator 103 diagram -> code(model) -> diagram preserves the inheritance edge.
class TestRealizationArrow 144 Serializable ..|> JsonModel makes JsonModel implement Serializable.
method TestRealizationArrow.test_parse_records_implements 153
method TestRealizationArrow.test_generated_code_implements_as_base 160
method TestRealizationArrow.test_generated_imports_include_protocol 168
class TestCompositionArrow 180 Engine *-- Car makes Engine compose Car.
method TestCompositionArrow.test_parse_records_composition 187
method TestCompositionArrow.test_generated_code_documents_composition 194
class TestAggregationArrow 207 Wheel o-- Bicycle makes Wheel aggregate Bicycle.
method TestAggregationArrow.test_parse_records_aggregation 214
method TestAggregationArrow.test_generated_code_documents_aggregation 221
class TestDependencyArrow 234 Service ..> Repository makes Service depend on Repository.
method TestDependencyArrow.test_parse_records_dependency 241
method TestDependencyArrow.test_generated_code_documents_dependency 248
class TestAssociationArrow 261 Driver --> Car records an association on Driver.
method TestAssociationArrow.test_parse_records_association 273
method TestAssociationArrow.test_association_not_confused_with_other_relationships 280
method TestAssociationArrow.test_generated_code_does_not_invent_inheritance 291
class TestLinkArrow 305 NodeA -- NodeB (solid link) is grammatically recognised but is a no-op.
method TestLinkArrow.test_parse_does_not_crash_and_records_no_relationship 317
method TestLinkArrow.test_both_nodes_still_generated 330
class TestCombinedDiagram 343 A single diagram exercising all seven arrows at once.
method TestCombinedDiagram.test_all_classes_parsed 378
method TestCombinedDiagram.test_each_relationship_attached_to_correct_class 396
method TestCombinedDiagram.test_generated_code_expresses_each_renderable_arrow 407
method TestCombinedDiagram.test_relationships_are_independent 426 No arrow bleeds into a class it does not belong to.