eclipse-sirius / sirius-desktop

Sirius Desktop: desktop-based graphical modelers for dedicated DSLs
https://eclipse.dev/sirius/
Eclipse Public License 2.0
15 stars 12 forks source link

[467] Fix edge creation tool regressions #509

Closed mPorhel closed 1 day ago

mPorhel commented 5 days ago

Bug: #467

Fix regressions introduced with #470 :

The idea of the new fix is not follow the previous logic of CreateDEdgeTask

In #470, the check added on clicked sourceView/targetView is too restrictive. Regarding how the edge mapping to "refresh" are found, checking that candidates for those mapping have the expected semantic candidates seems to be a better approach.

I have proposed avoid multiple coputation of DEdgeCandidates if several semantics have the same mapping, and to ensure reproductibility by replacing some HashSet with LinkedHashSet.

mPorhel commented 1 day ago

Pb in the message on the first commit, it seems you want to list the tests: However several use cases have been broken with unit tests: ???

Message update with the tests: HideRevealEdgeLabelsTest EdgeCreationPositionTest EdgeCreationPositionWithSnapToGridTest EdgeWithBorderNodeCreationPositionWithSnapToGridTest