diff --git a/SysML2.NET.Serializer.TextualNotation.Tests/Expected/17-Sequence Modeling/17a-Sequence-Modeling.sysml b/SysML2.NET.Serializer.TextualNotation.Tests/Expected/17-Sequence Modeling/17a-Sequence-Modeling.sysml new file mode 100644 index 00000000..e334824b --- /dev/null +++ b/SysML2.NET.Serializer.TextualNotation.Tests/Expected/17-Sequence Modeling/17a-Sequence-Modeling.sysml @@ -0,0 +1,34 @@ +package '17a-Sequence-Modeling' { + private import ScalarValues::*; + private import PayloadDefinitions::*; + package PayloadDefinitions { + item def Subscribe { + attribute topic: String; + ref part subscriber; + } + item def Publish { + attribute topic: String; + ref publication; + } + item def Deliver { + ref publication; + } + } + occurrence def PubSubSequence { + part producer[1] { + event occurrence publish_source_event; + } + abstract message publish_message of Publish[1] from producer.publish_source_event to server.publish_target_event; + part server[1] { + event occurrence subscribe_target_event; + then event occurrence publish_target_event; + then event occurrence deliver_source_event; + } + abstract message subscribe_message of Subscribe[1] from consumer.subscribe_source_event to server.subscribe_target_event; + abstract message deliver_message of Deliver[1] from server.deliver_source_event to consumer.deliver_target_event; + part consumer[1] { + event occurrence subscribe_source_event; + then event occurrence deliver_target_event; + } + } +} diff --git a/SysML2.NET.Serializer.TextualNotation.Tests/Expected/17-Sequence Modeling/17b-Sequence-Modeling.sysml b/SysML2.NET.Serializer.TextualNotation.Tests/Expected/17-Sequence Modeling/17b-Sequence-Modeling.sysml new file mode 100644 index 00000000..f1b419dd --- /dev/null +++ b/SysML2.NET.Serializer.TextualNotation.Tests/Expected/17-Sequence Modeling/17b-Sequence-Modeling.sysml @@ -0,0 +1,34 @@ +package '17b-Sequence-Modeling' { + private import ScalarValues::*; + private import PayloadDefinitions::*; + package PayloadDefinitions { + item def Subscribe { + attribute topic: String; + ref part subscriber; + } + item def Publish { + attribute topic: String; + ref publication; + } + item def Deliver { + ref publication; + } + } + occurrence def PubSubSequence { + part producer[1] { + event publish_message.sourceEvent; + } + abstract message publish_message of Publish[1]; + part server[1] { + event subscribe_message.targetEvent; + then event publish_message.targetEvent; + then event deliver_message.sourceEvent; + } + abstract message subscribe_message of Subscribe[1]; + abstract message deliver_message of Deliver[1]; + part consumer[1] { + event subscribe_message.sourceEvent; + then event deliver_message.targetEvent; + } + } +} diff --git a/SysML2.NET.Serializer.TextualNotation.Tests/Writers/TextualNotationValidationTestFixture.cs b/SysML2.NET.Serializer.TextualNotation.Tests/Writers/TextualNotationValidationTestFixture.cs index 8153511d..5ec197dd 100644 --- a/SysML2.NET.Serializer.TextualNotation.Tests/Writers/TextualNotationValidationTestFixture.cs +++ b/SysML2.NET.Serializer.TextualNotation.Tests/Writers/TextualNotationValidationTestFixture.cs @@ -134,6 +134,8 @@ public void OneTimeTearDown() [TestCase("15-Properties-Values-Expressions", "15_13-Discretely Sampled Function Value.sysmlx")] [TestCase("15-Properties-Values-Expressions", "15_19-Materials with Properties.sysmlx")] [TestCase("15-Properties-Values-Expressions", "15_19a-Materials with Properties.sysmlx")] + [TestCase("17-Sequence Modeling", "17a-Sequence-Modeling.sysmlx")] + [TestCase("17-Sequence Modeling", "17b-Sequence-Modeling.sysmlx")] public async Task VerifyValidationTextualNotationXmi(string folderName, string fileName) { var loggerFactory = LoggerFactory.Create(builder =>