diff --git a/repository/OpenPonk-BormEditor/OPBormActivityControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormActivityControllerTest.class.st index 2ac7853..75efe0a 100644 --- a/repository/OpenPonk-BormEditor/OPBormActivityControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormActivityControllerTest.class.st @@ -3,7 +3,7 @@ A BormActivityControllerTest is a test class for testing the behavior of BormAct " Class { #name : 'OPBormActivityControllerTest', - #superclass : 'OPBormControllerTest', + #superclass : 'OPBormProcessNodeControllerTest', #category : 'OpenPonk-BormEditor-Tests', #package : 'OpenPonk-BormEditor', #tag : 'Tests' @@ -15,21 +15,21 @@ OPBormActivityControllerTest >> controllerClass [ ] { #category : 'accessing' } -OPBormActivityControllerTest >> diagramElementClass [ - ^ BormActivityShape +OPBormActivityControllerTest >> creationTargetControllerClass [ + ^ OPBormParticipantController ] { #category : 'accessing' } -OPBormActivityControllerTest >> modelClass [ - ^ BormActivity +OPBormActivityControllerTest >> creationTargetModelClass [ + ^ BormParticipant ] { #category : 'accessing' } -OPBormActivityControllerTest >> targetControllerClass [ - ^ OPBormParticipantController +OPBormActivityControllerTest >> diagramElementClass [ + ^ BormActivityShape ] { #category : 'accessing' } -OPBormActivityControllerTest >> targetModelClass [ - ^ BormParticipant +OPBormActivityControllerTest >> modelClass [ + ^ BormActivity ] diff --git a/repository/OpenPonk-BormEditor/OPBormAssociationEnhancementController.class.st b/repository/OpenPonk-BormEditor/OPBormAssociationEnhancementController.class.st index 195d1a5..e8ad043 100644 --- a/repository/OpenPonk-BormEditor/OPBormAssociationEnhancementController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormAssociationEnhancementController.class.st @@ -6,6 +6,14 @@ Class { #tag : 'Controllers' } +{ #category : 'construction' } +OPBormAssociationEnhancementController >> dependingOnElements [ + + ^ super dependingOnElements , (Set with: + (self model owner ifNil: [ + self error: 'There is no owner of ' , self model asString ])) +] + { #category : 'diagram elements' } OPBormAssociationEnhancementController >> diagramElementOwner [ diff --git a/repository/OpenPonk-BormEditor/OPBormAssociationEnhancementControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormAssociationEnhancementControllerTest.class.st index 749cd66..525953d 100644 --- a/repository/OpenPonk-BormEditor/OPBormAssociationEnhancementControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormAssociationEnhancementControllerTest.class.st @@ -1,10 +1,6 @@ Class { #name : 'OPBormAssociationEnhancementControllerTest', - #superclass : 'OPBormControllerTest', - #instVars : [ - 'relationshipsSourceController', - 'relationshipsTargetController' - ], + #superclass : 'OPBormElementControllerTest', #category : 'OpenPonk-BormEditor-Tests', #package : 'OpenPonk-BormEditor', #tag : 'Tests' @@ -16,36 +12,40 @@ OPBormAssociationEnhancementControllerTest class >> isAbstract [ ^ self = OPBormAssociationEnhancementControllerTest ] -{ #category : 'initialization' } -OPBormAssociationEnhancementControllerTest >> setUpTarget [ - - relationshipsSourceController := self targetsSourceControllerClass - new. - relationshipsSourceController diagramController: diagramController. - relationshipsSourceController createModelIn: diagramController model. - relationshipsTargetController := OPBormActivityController new. - relationshipsTargetController diagramController: diagramController. - relationshipsTargetController createModelIn: diagramController model. - relationshipController := self targetControllerClass new. - relationshipController diagramController: diagramController. - relationshipController - source: relationshipsTargetController; - target: relationshipsSourceController. - relationshipController createModelIn: - relationshipsSourceController model -] - -{ #category : 'running' } -OPBormAssociationEnhancementControllerTest >> targetsSourceControllerClass [ +{ #category : 'accessing' } +OPBormAssociationEnhancementControllerTest >> creationTargetControllerClass [ - ^ self subclassResponsibility + ^ OPBormCommunicationController ] -{ #category : 'tests' } -OPBormAssociationEnhancementControllerTest >> testCreateDiagramElement [ +{ #category : 'accessing' } +OPBormAssociationEnhancementControllerTest >> creationTargetModelClass [ - relationshipController model add: model. - diagramController addController: relationshipController. + ^ BormCommunication +] - super testCreateDiagramElement +{ #category : 'accessing' } +OPBormAssociationEnhancementControllerTest >> setUpCreationTargetModel [ + + | sourceParticipant targetParticipant sourceActivity targetActivity creationTargetModel | + sourceParticipant := BormParticipant new. + diagramController model add: sourceParticipant. + targetParticipant := BormParticipant new. + diagramController model add: targetParticipant. + + sourceActivity := BormActivity new. + sourceParticipant add: sourceActivity. + + targetActivity := BormActivity new. + targetParticipant add: targetActivity. + + creationTargetModel := self creationTargetModelClass new. + creationTargetController model: creationTargetModel. + creationTargetController + modelSource: sourceActivity + in: targetActivity. + creationTargetController + modelTarget: targetActivity + in: targetActivity. + ^ creationTargetModel ] diff --git a/repository/OpenPonk-BormEditor/OPBormCommunicationController.class.st b/repository/OpenPonk-BormEditor/OPBormCommunicationController.class.st index 25de4be..a028eb7 100644 --- a/repository/OpenPonk-BormEditor/OPBormCommunicationController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormCommunicationController.class.st @@ -11,16 +11,6 @@ OPBormCommunicationController >> canBeTargetForDataFlow: aController [ ^ true ] -{ #category : 'accessing' } -OPBormCommunicationController >> createModelIn: aParentModel [ - self model: self modelClass new. - model source: self source model. - model target: self target model. - source model send: model. - target model receive: model. - ^ model -] - { #category : 'construction' } OPBormCommunicationController >> diagramElementClass [ @@ -37,6 +27,22 @@ OPBormCommunicationController >> modelClass [ ^ BormCommunication ] +{ #category : 'accessing' } +OPBormCommunicationController >> modelSource: aModel in: aParentModel [ + + (super modelSource: aModel in: aParentModel) ifFalse: [ ^ false ]. + self modelSource send: model. + ^ true +] + +{ #category : 'accessing' } +OPBormCommunicationController >> modelTarget: aModel in: aParentModel [ + + (super modelTarget: aModel in: aParentModel) ifFalse: [ ^ false ]. + self modelTarget receive: model. + ^ true +] + { #category : 'destruction' } OPBormCommunicationController >> removeModel [ self model target removeCommunication: self model. diff --git a/repository/OpenPonk-BormEditor/OPBormCommunicationControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormCommunicationControllerTest.class.st index 22049f4..0586e94 100644 --- a/repository/OpenPonk-BormEditor/OPBormCommunicationControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormCommunicationControllerTest.class.st @@ -9,6 +9,20 @@ Class { #tag : 'Tests' } +{ #category : 'initialization' } +OPBormCommunicationControllerTest >> assignModelSource [ + + super assignModelSource. + model source send: model +] + +{ #category : 'initialization' } +OPBormCommunicationControllerTest >> assignModelTarget [ + + super assignModelTarget. + model target receive: model +] + { #category : 'accessing' } OPBormCommunicationControllerTest >> controllerClass [ ^ OPBormCommunicationController @@ -26,6 +40,12 @@ OPBormCommunicationControllerTest >> modelClass [ ] { #category : 'as yet unclassified' } -OPBormCommunicationControllerTest >> targetControllerClass [ +OPBormCommunicationControllerTest >> sourceControllerClass [ ^ OPBormActivityController ] + +{ #category : 'as yet unclassified' } +OPBormCommunicationControllerTest >> sourceModelClass [ + + ^ BormActivity +] diff --git a/repository/OpenPonk-BormEditor/OPBormConstraintController.class.st b/repository/OpenPonk-BormEditor/OPBormConstraintController.class.st index 83092a7..0f7842a 100644 --- a/repository/OpenPonk-BormEditor/OPBormConstraintController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormConstraintController.class.st @@ -11,14 +11,6 @@ OPBormConstraintController >> canVisitTarget: aController [ ^ aController canBeTargetForConstraint: self ] -{ #category : 'construction' } -OPBormConstraintController >> createModelIn: aParentModel [ - - self model: self modelClass new. - aParentModel constraint: model. - ^ model -] - { #category : 'construction' } OPBormConstraintController >> diagramElementClass [ @@ -30,6 +22,12 @@ OPBormConstraintController >> modelClass [ ^ BormConstraint ] +{ #category : 'construction' } +OPBormConstraintController >> registerModelInContainer: aParentModel [ + + aParentModel constraint: model +] + { #category : 'private' } OPBormConstraintController >> removeModel [ diff --git a/repository/OpenPonk-BormEditor/OPBormConstraintControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormConstraintControllerTest.class.st index b385a52..f6f5bfb 100644 --- a/repository/OpenPonk-BormEditor/OPBormConstraintControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormConstraintControllerTest.class.st @@ -24,19 +24,3 @@ OPBormConstraintControllerTest >> diagramElementClass [ OPBormConstraintControllerTest >> modelClass [ ^ BormConstraint ] - -{ #category : 'accessing' } -OPBormConstraintControllerTest >> targetControllerClass [ - ^ OPBormTransitionController -] - -{ #category : 'accessing' } -OPBormConstraintControllerTest >> targetModelClass [ - ^ BormTransition -] - -{ #category : 'running' } -OPBormConstraintControllerTest >> targetsSourceControllerClass [ - - ^ OPBormStateController -] diff --git a/repository/OpenPonk-BormEditor/OPBormContainerControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormContainerControllerTest.class.st index eda374b..fdc0ec9 100644 --- a/repository/OpenPonk-BormEditor/OPBormContainerControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormContainerControllerTest.class.st @@ -1,6 +1,6 @@ Class { #name : 'OPBormContainerControllerTest', - #superclass : 'OPBormControllerTest', + #superclass : 'OPBormElementControllerTest', #category : 'OpenPonk-BormEditor-Tests', #package : 'OpenPonk-BormEditor', #tag : 'Tests' diff --git a/repository/OpenPonk-BormEditor/OPBormControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormControllerTest.class.st deleted file mode 100644 index 384c3d2..0000000 --- a/repository/OpenPonk-BormEditor/OPBormControllerTest.class.st +++ /dev/null @@ -1,101 +0,0 @@ -Class { - #name : 'OPBormControllerTest', - #superclass : 'OPElementControllerTest', - #instVars : [ - 'relationshipController' - ], - #category : 'OpenPonk-BormEditor-Tests', - #package : 'OpenPonk-BormEditor', - #tag : 'Tests' -} - -{ #category : 'testing' } -OPBormControllerTest class >> isAbstract [ - "Override to true if a TestCase subclass is Abstract and should not have - TestCase instances built from it" - - ^ self = OPBormControllerTest -] - -{ #category : 'accessing' } -OPBormControllerTest >> controllerClass [ - ^ self subclassResponsibility -] - -{ #category : 'running' } -OPBormControllerTest >> createTargetController [ - ^ self targetControllerClass new - model: self createTargetModel; - yourself -] - -{ #category : 'running' } -OPBormControllerTest >> createTargetModel [ - ^ self targetModelClass new -] - -{ #category : 'accessing' } -OPBormControllerTest >> diagramControllerClass [ - - ^ OPBormDiagramController -] - -{ #category : 'accessing' } -OPBormControllerTest >> diagramModelClass [ - ^ BormORModel -] - -{ #category : 'accessing' } -OPBormControllerTest >> modelClass [ - ^ self subclassResponsibility -] - -{ #category : 'accessing' } -OPBormControllerTest >> modelOwner [ - ^ diagramController model -] - -{ #category : 'running' } -OPBormControllerTest >> setUp [ - super setUp. - self setUpTarget -] - -{ #category : 'running' } -OPBormControllerTest >> setUpTarget [ - relationshipController := self targetControllerClass new. - relationshipController diagramController: diagramController. - relationshipController createModelIn: diagramController model -] - -{ #category : 'accessing' } -OPBormControllerTest >> targetControllerClass [ - ^ self subclassResponsibility -] - -{ #category : 'accessing' } -OPBormControllerTest >> targetModelClass [ - ^ self subclassResponsibility -] - -{ #category : 'tests' } -OPBormControllerTest >> testAssignmentToParent [ - controller createModelIn: relationshipController model. - self assert: (relationshipController model has: controller model) -] - -{ #category : 'accessing' } -OPBormControllerTest >> testCreateController [ - self assert: controller class = self controllerClass -] - -{ #category : 'accessing' } -OPBormControllerTest >> testCreateModel [ - controller createModelIn: relationshipController model. - self assert: controller model class equals: self modelClass -] - -{ #category : 'accessing' } -OPBormControllerTest >> testModelClass [ - self assert: controller modelClass equals: self modelClass -] diff --git a/repository/OpenPonk-BormEditor/OPBormDataFlowController.class.st b/repository/OpenPonk-BormEditor/OPBormDataFlowController.class.st index b8a105d..e4b4cc5 100644 --- a/repository/OpenPonk-BormEditor/OPBormDataFlowController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormDataFlowController.class.st @@ -28,14 +28,6 @@ OPBormDataFlowController >> canVisitTarget: aController [ ^ aController canBeTargetForDataFlow: self ] -{ #category : 'construction' } -OPBormDataFlowController >> createModelIn: aParentModel [ - - self model: self modelClass new. - aParentModel add: model. - ^ model -] - { #category : 'construction' } OPBormDataFlowController >> diagramElementClass [ diff --git a/repository/OpenPonk-BormEditor/OPBormDataFlowControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormDataFlowControllerTest.class.st index 7d926dc..08f7d94 100644 --- a/repository/OpenPonk-BormEditor/OPBormDataFlowControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormDataFlowControllerTest.class.st @@ -28,33 +28,3 @@ OPBormDataFlowControllerTest >> diagramElementClass [ OPBormDataFlowControllerTest >> modelClass [ ^ BormDataFlow ] - -{ #category : 'as yet unclassified' } -OPBormDataFlowControllerTest >> modelOwner [ - ^ communication -] - -{ #category : 'running' } -OPBormDataFlowControllerTest >> setUp [ - super setUp. - communicationController := OPBormCommunicationController new. - communication := BormCommunication new. - communicationController model: communication. - diagramController addController: communicationController -] - -{ #category : 'accessing' } -OPBormDataFlowControllerTest >> targetControllerClass [ - ^ OPBormCommunicationController -] - -{ #category : 'accessing' } -OPBormDataFlowControllerTest >> targetModelClass [ - ^ BormCommunication -] - -{ #category : 'running' } -OPBormDataFlowControllerTest >> targetsSourceControllerClass [ - - ^ OPBormActivityController -] diff --git a/repository/OpenPonk-BormEditor/OPBormDiagramController.class.st b/repository/OpenPonk-BormEditor/OPBormDiagramController.class.st index a86ba85..43a6226 100644 --- a/repository/OpenPonk-BormEditor/OPBormDiagramController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormDiagramController.class.st @@ -57,6 +57,7 @@ OPBormDiagramController >> controllerFactory [ { #category : 'rebuilding' } OPBormDiagramController >> elementsToShowInside [ + ^ model participants ] diff --git a/repository/OpenPonk-BormEditor/OPBormElementControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormElementControllerTest.class.st new file mode 100644 index 0000000..608f0bf --- /dev/null +++ b/repository/OpenPonk-BormEditor/OPBormElementControllerTest.class.st @@ -0,0 +1,36 @@ +Class { + #name : 'OPBormElementControllerTest', + #superclass : 'OPAbstractElementControllerTest', + #category : 'OpenPonk-BormEditor-Tests', + #package : 'OpenPonk-BormEditor', + #tag : 'Tests' +} + +{ #category : 'testing' } +OPBormElementControllerTest class >> isAbstract [ + "Override to true if a TestCase subclass is Abstract and should not have + TestCase instances built from it" + + ^ self = OPBormElementControllerTest +] + +{ #category : 'accessing' } +OPBormElementControllerTest >> creationTargetControllerClass [ + ^ self subclassResponsibility +] + +{ #category : 'accessing' } +OPBormElementControllerTest >> creationTargetModelClass [ + ^ self subclassResponsibility +] + +{ #category : 'accessing' } +OPBormElementControllerTest >> diagramControllerClass [ + + ^ OPBormDiagramController +] + +{ #category : 'accessing' } +OPBormElementControllerTest >> diagramModelClass [ + ^ BormORModel +] diff --git a/repository/OpenPonk-BormEditor/OPBormParticipantController.class.st b/repository/OpenPonk-BormEditor/OPBormParticipantController.class.st index f824fea..fd0d450 100644 --- a/repository/OpenPonk-BormEditor/OPBormParticipantController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormParticipantController.class.st @@ -65,7 +65,8 @@ OPBormParticipantController >> nodeRoassalShapes [ { #category : 'destruction' } OPBormParticipantController >> removeModel [ - self diagramController model remove: self model + + self model owner remove: self model ] { #category : 'hooks' } diff --git a/repository/OpenPonk-BormEditor/OPBormParticipantControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormParticipantControllerTest.class.st index f933849..1556c63 100644 --- a/repository/OpenPonk-BormEditor/OPBormParticipantControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormParticipantControllerTest.class.st @@ -17,8 +17,13 @@ OPBormParticipantControllerTest >> createTargetController [ ] { #category : 'accessing' } -OPBormParticipantControllerTest >> createTargetModel [ - ^ diagramController model +OPBormParticipantControllerTest >> creationTargetControllerClass [ + ^ self diagramControllerClass +] + +{ #category : 'accessing' } +OPBormParticipantControllerTest >> creationTargetModelClass [ + ^ self diagramModelClass ] { #category : 'accessing' } @@ -31,18 +36,3 @@ OPBormParticipantControllerTest >> diagramElementClass [ OPBormParticipantControllerTest >> modelClass [ ^ BormParticipant ] - -{ #category : 'running' } -OPBormParticipantControllerTest >> setUpTarget [ - relationshipController := diagramController -] - -{ #category : 'accessing' } -OPBormParticipantControllerTest >> targetControllerClass [ - ^ self diagramControllerClass -] - -{ #category : 'accessing' } -OPBormParticipantControllerTest >> targetModelClass [ - ^ self diagramModelClass -] diff --git a/repository/OpenPonk-BormEditor/OPBormProcessNodeController.class.st b/repository/OpenPonk-BormEditor/OPBormProcessNodeController.class.st index ba80e56..a769086 100644 --- a/repository/OpenPonk-BormEditor/OPBormProcessNodeController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormProcessNodeController.class.st @@ -6,15 +6,6 @@ Class { #tag : 'Controllers' } -{ #category : 'adding' } -OPBormProcessNodeController >> addAsTargetFor: aController [ - self assert: (self canBeTargetFor: aController). - aController target: self. - aController - createModelIn: self model - andShowInDiagram: self diagramController -] - { #category : 'adding' } OPBormProcessNodeController >> bormModels [ ^ self diagramController editor workbench projectController project models @@ -26,14 +17,15 @@ OPBormProcessNodeController >> buildEditorForm: aForm [ (aForm addText: 'Name') text: self model name; - whenTextChangedDo: [ :newValue | + whenTextChangedDo: [ :newValue | self model name: newValue asString. self diagramElement modelChanged ]. + self diagramController editor ifNil: [ ^ self ]. (aForm addDroplist: 'Submodel') items: { nil } , self bormModels; display: [ :m | m ifNil: '' ifNotNil: #name ]; selectItem: self model submodel; - whenSelectedItemChangedDo: [ :newValue | + whenSelectedItemChangedDo: [ :newValue | self model submodel: newValue. self diagramElement modelChanged ] ] @@ -53,6 +45,14 @@ OPBormProcessNodeController >> dependentElements [ ^ model transitions ] +{ #category : 'construction' } +OPBormProcessNodeController >> dependingOnElements [ + + ^ super dependingOnElements + , (Set with: (self model participant ifNil: [ + self error: 'There is no participant of ' , self model asString ])) +] + { #category : 'construction' } OPBormProcessNodeController >> hookDiagramElement [ diff --git a/repository/OpenPonk-BormEditor/OPBormProcessNodeControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormProcessNodeControllerTest.class.st new file mode 100644 index 0000000..e6c7cd1 --- /dev/null +++ b/repository/OpenPonk-BormEditor/OPBormProcessNodeControllerTest.class.st @@ -0,0 +1,15 @@ +Class { + #name : 'OPBormProcessNodeControllerTest', + #superclass : 'OPBormElementControllerTest', + #category : 'OpenPonk-BormEditor-Tests', + #package : 'OpenPonk-BormEditor', + #tag : 'Tests' +} + +{ #category : 'testing' } +OPBormProcessNodeControllerTest class >> isAbstract [ + "Override to true if a TestCase subclass is Abstract and should not have + TestCase instances built from it" + + ^ self = OPBormProcessNodeControllerTest +] diff --git a/repository/OpenPonk-BormEditor/OPBormRelationshipController.class.st b/repository/OpenPonk-BormEditor/OPBormRelationshipController.class.st index 4efff36..fee1bbc 100644 --- a/repository/OpenPonk-BormEditor/OPBormRelationshipController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormRelationshipController.class.st @@ -31,3 +31,9 @@ OPBormRelationshipController >> elementsToShowInside [ OPBormRelationshipController >> isHideable [ ^ true ] + +{ #category : 'construction' } +OPBormRelationshipController >> registerModelInContainer: aParentModel [ + + "do nothing" +] diff --git a/repository/OpenPonk-BormEditor/OPBormRelationshipControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormRelationshipControllerTest.class.st index d48656e..9b8bf19 100644 --- a/repository/OpenPonk-BormEditor/OPBormRelationshipControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormRelationshipControllerTest.class.st @@ -1,9 +1,6 @@ Class { #name : 'OPBormRelationshipControllerTest', - #superclass : 'OPBormControllerTest', - #instVars : [ - 'sourceController' - ], + #superclass : 'OPAbstractDirectionalRelationshipControllerTest', #category : 'OpenPonk-BormEditor-Tests', #package : 'OpenPonk-BormEditor', #tag : 'Tests' @@ -14,22 +11,33 @@ OPBormRelationshipControllerTest class >> isAbstract [ ^ self = OPBormRelationshipControllerTest ] -{ #category : 'running' } -OPBormRelationshipControllerTest >> setUp [ - super setUp. - self setUpSource. - controller source: sourceController. - controller target: relationshipController +{ #category : 'accessing' } +OPBormRelationshipControllerTest >> diagramControllerClass [ + + ^ OPBormDiagramController +] + +{ #category : 'accessing' } +OPBormRelationshipControllerTest >> diagramModelClass [ + ^ BormORModel ] { #category : 'running' } -OPBormRelationshipControllerTest >> setUpSource [ - sourceController := self sourceControllerClass new. - sourceController diagramController: diagramController. - sourceController createModelIn: diagramController model +OPBormRelationshipControllerTest >> setUpSourceModel [ + + | participant | + participant := BormParticipant new. + diagramController model add: participant. + + ^ sourceModel := creationTargetController createModelIn: participant ] -{ #category : 'as yet unclassified' } -OPBormRelationshipControllerTest >> sourceControllerClass [ - ^ OPBormActivityController +{ #category : 'running' } +OPBormRelationshipControllerTest >> setUpTargetModel [ + + | participant | + participant := BormParticipant new. + diagramController model add: participant. + + targetModel := targetController createModelIn: participant ] diff --git a/repository/OpenPonk-BormEditor/OPBormStateControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormStateControllerTest.class.st index 52d8e15..52118b8 100644 --- a/repository/OpenPonk-BormEditor/OPBormStateControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormStateControllerTest.class.st @@ -3,7 +3,7 @@ A BormStateControllerTest is a test class for testing the behavior of BormStateC " Class { #name : 'OPBormStateControllerTest', - #superclass : 'OPBormControllerTest', + #superclass : 'OPBormProcessNodeControllerTest', #category : 'OpenPonk-BormEditor-Tests', #package : 'OpenPonk-BormEditor', #tag : 'Tests' @@ -15,21 +15,21 @@ OPBormStateControllerTest >> controllerClass [ ] { #category : 'accessing' } -OPBormStateControllerTest >> diagramElementClass [ - ^ BormStateShape +OPBormStateControllerTest >> creationTargetControllerClass [ + ^ OPBormParticipantController ] { #category : 'accessing' } -OPBormStateControllerTest >> modelClass [ - ^ BormState +OPBormStateControllerTest >> creationTargetModelClass [ + ^ BormParticipant ] { #category : 'accessing' } -OPBormStateControllerTest >> targetControllerClass [ - ^ OPBormParticipantController +OPBormStateControllerTest >> diagramElementClass [ + ^ BormStateShape ] { #category : 'accessing' } -OPBormStateControllerTest >> targetModelClass [ - ^ BormParticipant +OPBormStateControllerTest >> modelClass [ + ^ BormState ] diff --git a/repository/OpenPonk-BormEditor/OPBormTransitionController.class.st b/repository/OpenPonk-BormEditor/OPBormTransitionController.class.st index 68febef..a0926ee 100644 --- a/repository/OpenPonk-BormEditor/OPBormTransitionController.class.st +++ b/repository/OpenPonk-BormEditor/OPBormTransitionController.class.st @@ -17,16 +17,6 @@ OPBormTransitionController >> canBeTargetForDataFlow: aDataFlow [ ^ false ] -{ #category : 'hooks' } -OPBormTransitionController >> createModelIn: aParentModel [ - self model: self modelClass new. - model source: self source model. - model target: self target model. - source model addTransition: model. - target model addTransition: model. - ^ model -] - { #category : 'construction' } OPBormTransitionController >> diagramElementClass [ @@ -38,6 +28,22 @@ OPBormTransitionController >> modelClass [ ^ BormTransition ] +{ #category : 'hooks' } +OPBormTransitionController >> modelSource: aModel in: aParentModel [ + + (super modelSource: aModel in: aParentModel) ifFalse: [ ^ false ]. + self modelSource addTransition: model. + ^ true +] + +{ #category : 'hooks' } +OPBormTransitionController >> modelTarget: aModel in: aParentModel [ + + (super modelTarget: aModel in: aParentModel) ifFalse: [ ^ false ]. + self modelTarget addTransition: model. + ^ true +] + { #category : 'destruction' } OPBormTransitionController >> removeModel [ self model target removeTransition: self model. diff --git a/repository/OpenPonk-BormEditor/OPBormTransitionControllerTest.class.st b/repository/OpenPonk-BormEditor/OPBormTransitionControllerTest.class.st index 5799e44..18ddd07 100644 --- a/repository/OpenPonk-BormEditor/OPBormTransitionControllerTest.class.st +++ b/repository/OpenPonk-BormEditor/OPBormTransitionControllerTest.class.st @@ -9,6 +9,20 @@ Class { #tag : 'Tests' } +{ #category : 'initialization' } +OPBormTransitionControllerTest >> assignModelSource [ + + super assignModelSource. + model source addTransition: model +] + +{ #category : 'initialization' } +OPBormTransitionControllerTest >> assignModelTarget [ + + super assignModelTarget. + model target addTransition: model +] + { #category : 'accessing' } OPBormTransitionControllerTest >> controllerClass [ ^ OPBormTransitionController @@ -26,6 +40,21 @@ OPBormTransitionControllerTest >> modelClass [ ] { #category : 'as yet unclassified' } -OPBormTransitionControllerTest >> targetControllerClass [ +OPBormTransitionControllerTest >> sourceControllerClass [ ^ OPBormStateController ] + +{ #category : 'as yet unclassified' } +OPBormTransitionControllerTest >> sourceModelClass [ + ^ BormState +] + +{ #category : 'as yet unclassified' } +OPBormTransitionControllerTest >> targetControllerClass [ + ^ OPBormActivityController +] + +{ #category : 'as yet unclassified' } +OPBormTransitionControllerTest >> targetModelClass [ + ^ BormActivity +]