From 5775fd79b0ef21049e870cba408db5e83f425744 Mon Sep 17 00:00:00 2001 From: Jan Bliznicenko Date: Sun, 30 Jun 2024 17:44:51 +0200 Subject: [PATCH] reworking tests - wip --- .../OPUmlAttributeController.class.st | 20 +++++++++++++++++++ .../OPUmlClassItemController.class.st | 17 ++++++++++++++-- .../OPUmlElementControllerTest.class.st | 7 +------ .../OPUmlEnumLiteralControllerTest.class.st | 5 ----- ...OPUmlEnumerationLiteralController.class.st | 6 ++++++ .../OPUmlExtensionController.class.st | 5 ----- .../OPUmlRelationshipControllerTest.class.st | 14 ++++++++++++- 7 files changed, 55 insertions(+), 19 deletions(-) diff --git a/repository/OpenPonk-ClassEditor/OPUmlAttributeController.class.st b/repository/OpenPonk-ClassEditor/OPUmlAttributeController.class.st index b233675d..0d7c2224 100644 --- a/repository/OpenPonk-ClassEditor/OPUmlAttributeController.class.st +++ b/repository/OpenPonk-ClassEditor/OPUmlAttributeController.class.st @@ -33,6 +33,18 @@ OPUmlAttributeController >> createModelIn: aClass [ ^ model ] +{ #category : 'construction' } +OPUmlAttributeController >> dependingOnElements [ + + | asSetOrEmpty | + asSetOrEmpty := [ :nullableElement | + nullableElement + ifNil: [ Set empty ] + ifNotNil: [ :element | Set with: element ] ]. + ^ super dependingOnElements + , (asSetOrEmpty value: model owningAssociation) +] + { #category : 'forms' } OPUmlAttributeController >> descriptionDefaultValue [ @@ -171,6 +183,14 @@ OPUmlAttributeController >> removeDiagramElement [ diagramElement := nil ] +{ #category : 'removing' } +OPUmlAttributeController >> removeModel [ + "could be any of those, so just nil all of them" + + super removeModel. + model owningAssociation: nil +] + { #category : 'accessing' } OPUmlAttributeController >> typeNamed: aName [ OPUMLXMISpecsStorage primitivesMap at: aName ifPresent: [ :prim | ^ prim ]. diff --git a/repository/OpenPonk-ClassEditor/OPUmlClassItemController.class.st b/repository/OpenPonk-ClassEditor/OPUmlClassItemController.class.st index f8e35ee9..8092b6d2 100644 --- a/repository/OpenPonk-ClassEditor/OPUmlClassItemController.class.st +++ b/repository/OpenPonk-ClassEditor/OPUmlClassItemController.class.st @@ -6,6 +6,19 @@ Class { #tag : 'Controllers' } +{ #category : 'construction' } +OPUmlClassItemController >> dependingOnElements [ + + | asSetOrEmpty | + asSetOrEmpty := [ :nullableElement | + nullableElement + ifNil: [ Set empty ] + ifNotNil: [ :element | Set with: element ] ]. + ^ super dependingOnElements , (asSetOrEmpty value: model owningClass) + , (asSetOrEmpty value: model interface) + , (asSetOrEmpty value: model datatype) +] + { #category : 'forms' } OPUmlClassItemController >> descriptionIsStatic [ @@ -21,6 +34,6 @@ OPUmlClassItemController >> removeModel [ "could be any of those, so just nil all of them" model owningClass: nil. - model datatype: nil. - model interface: nil + model interface: nil. + model datatype: nil ] diff --git a/repository/OpenPonk-ClassEditor/OPUmlElementControllerTest.class.st b/repository/OpenPonk-ClassEditor/OPUmlElementControllerTest.class.st index d1beecd8..2372152e 100644 --- a/repository/OpenPonk-ClassEditor/OPUmlElementControllerTest.class.st +++ b/repository/OpenPonk-ClassEditor/OPUmlElementControllerTest.class.st @@ -1,6 +1,6 @@ Class { #name : 'OPUmlElementControllerTest', - #superclass : 'OPElementControllerTest', + #superclass : 'OPAbstractElementControllerTest', #category : 'OpenPonk-ClassEditor-Tests - Controllers', #package : 'OpenPonk-ClassEditor', #tag : 'Tests - Controllers' @@ -22,8 +22,3 @@ OPUmlElementControllerTest >> diagramModelClass [ ^ OPUMLPackage ] - -{ #category : 'tests - model' } -OPUmlElementControllerTest >> testModelClass [ - self assert: controller modelClass equals: self modelClass -] diff --git a/repository/OpenPonk-ClassEditor/OPUmlEnumLiteralControllerTest.class.st b/repository/OpenPonk-ClassEditor/OPUmlEnumLiteralControllerTest.class.st index 79bf05fc..bf37e53a 100644 --- a/repository/OpenPonk-ClassEditor/OPUmlEnumLiteralControllerTest.class.st +++ b/repository/OpenPonk-ClassEditor/OPUmlEnumLiteralControllerTest.class.st @@ -50,11 +50,6 @@ OPUmlEnumLiteralControllerTest >> testEnumerationBeTarget [ equals: {controller model} ] -{ #category : 'tests - accessing' } -OPUmlEnumLiteralControllerTest >> testModelClass [ - self assert: controller modelClass equals: self modelClass -] - { #category : 'tests - removing' } OPUmlEnumLiteralControllerTest >> testRemoveFromView [ diff --git a/repository/OpenPonk-ClassEditor/OPUmlEnumerationLiteralController.class.st b/repository/OpenPonk-ClassEditor/OPUmlEnumerationLiteralController.class.st index ae0d07b7..80b36a55 100644 --- a/repository/OpenPonk-ClassEditor/OPUmlEnumerationLiteralController.class.st +++ b/repository/OpenPonk-ClassEditor/OPUmlEnumerationLiteralController.class.st @@ -25,6 +25,12 @@ OPUmlEnumerationLiteralController >> createModelIn: aParentModel [ ^ model ] +{ #category : 'construction' } +OPUmlEnumerationLiteralController >> dependingOnElements [ + + ^ super dependingOnElements , (Set with: model enumeration) +] + { #category : 'construction' } OPUmlEnumerationLiteralController >> diagramElementClass [ diff --git a/repository/OpenPonk-ClassEditor/OPUmlExtensionController.class.st b/repository/OpenPonk-ClassEditor/OPUmlExtensionController.class.st index c116173b..3e70fb95 100644 --- a/repository/OpenPonk-ClassEditor/OPUmlExtensionController.class.st +++ b/repository/OpenPonk-ClassEditor/OPUmlExtensionController.class.st @@ -28,11 +28,6 @@ OPUmlExtensionController >> createModelIn: aParentModel [ ^ model ] -{ #category : 'accessing' } -OPUmlExtensionController >> dependentElements [ - ^ {model memberEnds first} -] - { #category : 'figures' } OPUmlExtensionController >> diagramElementClass [ diff --git a/repository/OpenPonk-ClassEditor/OPUmlRelationshipControllerTest.class.st b/repository/OpenPonk-ClassEditor/OPUmlRelationshipControllerTest.class.st index fc451250..f35880af 100644 --- a/repository/OpenPonk-ClassEditor/OPUmlRelationshipControllerTest.class.st +++ b/repository/OpenPonk-ClassEditor/OPUmlRelationshipControllerTest.class.st @@ -1,6 +1,6 @@ Class { #name : 'OPUmlRelationshipControllerTest', - #superclass : 'OPUmlElementControllerTest', + #superclass : 'OPAbstractDirectionalRelationshipControllerTest', #category : 'OpenPonk-ClassEditor-Tests - Controllers', #package : 'OpenPonk-ClassEditor', #tag : 'Tests - Controllers' @@ -11,6 +11,18 @@ OPUmlRelationshipControllerTest class >> isAbstract [ ^ self = OPUmlRelationshipControllerTest ] +{ #category : 'accessing' } +OPUmlRelationshipControllerTest >> diagramControllerClass [ + + ^ OPUmlPackageDiagramController +] + +{ #category : 'accessing' } +OPUmlRelationshipControllerTest >> diagramModelClass [ + + ^ OPUMLPackage +] + { #category : 'as yet unclassified' } OPUmlRelationshipControllerTest >> sourceClass [