Skip to content

Commit 18682f7

Browse files
committed
<Bug>[Sequence Diagrams]: <Fix duplicate links>
[ * Update unit tests to ensure correct # of links * Update version ] [#82]
1 parent 5294565 commit 18682f7

File tree

3 files changed

+21
-3
lines changed

3 files changed

+21
-3
lines changed

src/untanglepyut/UnTangleSequenceDiagram.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,9 @@ def _untangleSDMessages(self, pyutDocument: Element) -> OglSDMessages:
102102

103103
oglSDMessage: OglSDMessage = OglSDMessage(srcSDInstance=srcInstance, pyutSDMessage=pyutSDMessage, dstSDInstance=dstInstance)
104104

105-
srcInstance.addLink(link=oglSDMessage)
106-
dstInstance.addLink(link=oglSDMessage)
105+
# This is done by the constructor above
106+
# srcInstance.addLink(link=oglSDMessage)
107+
# dstInstance.addLink(link=oglSDMessage)
107108

108109
oglSDMessages[pyutSDMessage.id] = oglSDMessage
109110

src/untanglepyut/_version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__: str = '2.4.0'
1+
__version__: str = '2.5.0'

tests/untanglepyut/v11/TestUnTangleSequenceDiagram.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from typing import cast
12
from unittest import TestSuite
23
from unittest import main as unitTestMain
34

@@ -83,6 +84,22 @@ def testOglSdInstance(self):
8384
self.assertEqual('OzzeeInstance', oglSDInstance.pyutObject.instanceName, 'Incorrect instance name')
8485
self.assertEqual(200, oglSDInstance.pyutObject.instanceLifeLineLength, '')
8586

87+
def testOnlySingleLinksCreated(self):
88+
89+
unTangleSequenceDiagram: UnTangleSequenceDiagram = self._untangleSequenceDiagramDocument()
90+
91+
oglSDInstances: OglSDInstances = unTangleSequenceDiagram.oglSDInstances
92+
93+
for sdInstance in oglSDInstances.values():
94+
oglSDInstance: OglSDInstance = cast(OglSDInstance, sdInstance)
95+
instanceName: str = oglSDInstance.pyutObject.instanceName
96+
if instanceName == 'hasiiInstance':
97+
self.assertEqual(1, len(oglSDInstance.links), f'`{instanceName}` Should have a single message')
98+
elif instanceName == 'franInstance':
99+
self.assertEqual(3, len(oglSDInstance.links), f'`{instanceName}` Should have a single message')
100+
elif instanceName == 'OzzeeInstance':
101+
self.assertEqual(2, len(oglSDInstance.links), f'`{instanceName}` Should have a single message')
102+
86103
def _untangleSequenceDiagramDocument(self) -> UnTangleSequenceDiagram:
87104

88105
root: Element = parse(V11_SEQUENCE_DIAGRAM_DOCUMENT)

0 commit comments

Comments
 (0)