diff options
Diffstat (limited to 'cdo/tests/uml/org.eclipse.uml2.uml.cdo.tests/src/org/eclipse/uml2/uml/cdo/tests/compliance/AbstractionTest.java')
-rwxr-xr-x | cdo/tests/uml/org.eclipse.uml2.uml.cdo.tests/src/org/eclipse/uml2/uml/cdo/tests/compliance/AbstractionTest.java | 2152 |
1 files changed, 2152 insertions, 0 deletions
diff --git a/cdo/tests/uml/org.eclipse.uml2.uml.cdo.tests/src/org/eclipse/uml2/uml/cdo/tests/compliance/AbstractionTest.java b/cdo/tests/uml/org.eclipse.uml2.uml.cdo.tests/src/org/eclipse/uml2/uml/cdo/tests/compliance/AbstractionTest.java new file mode 100755 index 00000000..8ad56edf --- /dev/null +++ b/cdo/tests/uml/org.eclipse.uml2.uml.cdo.tests/src/org/eclipse/uml2/uml/cdo/tests/compliance/AbstractionTest.java @@ -0,0 +1,2152 @@ +/* + * Copyright (c) 2018 CEA, and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Eike Stepper - initial API and implementation + */ +package org.eclipse.uml2.uml.cdo.tests.compliance; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EAnnotation; + +import org.eclipse.uml2.uml.Abstraction; +import org.eclipse.uml2.uml.AcceptCallAction; +import org.eclipse.uml2.uml.AcceptEventAction; +import org.eclipse.uml2.uml.ActionExecutionSpecification; +import org.eclipse.uml2.uml.ActionInputPin; +import org.eclipse.uml2.uml.Activity; +import org.eclipse.uml2.uml.ActivityFinalNode; +import org.eclipse.uml2.uml.ActivityParameterNode; +import org.eclipse.uml2.uml.ActivityPartition; +import org.eclipse.uml2.uml.Actor; +import org.eclipse.uml2.uml.AddStructuralFeatureValueAction; +import org.eclipse.uml2.uml.AddVariableValueAction; +import org.eclipse.uml2.uml.AnyReceiveEvent; +import org.eclipse.uml2.uml.Artifact; +import org.eclipse.uml2.uml.Association; +import org.eclipse.uml2.uml.AssociationClass; +import org.eclipse.uml2.uml.BehaviorExecutionSpecification; +import org.eclipse.uml2.uml.BroadcastSignalAction; +import org.eclipse.uml2.uml.CallBehaviorAction; +import org.eclipse.uml2.uml.CallEvent; +import org.eclipse.uml2.uml.CallOperationAction; +import org.eclipse.uml2.uml.CentralBufferNode; +import org.eclipse.uml2.uml.ChangeEvent; +import org.eclipse.uml2.uml.ClearAssociationAction; +import org.eclipse.uml2.uml.ClearStructuralFeatureAction; +import org.eclipse.uml2.uml.ClearVariableAction; +import org.eclipse.uml2.uml.Collaboration; +import org.eclipse.uml2.uml.CollaborationUse; +import org.eclipse.uml2.uml.CombinedFragment; +import org.eclipse.uml2.uml.Comment; +import org.eclipse.uml2.uml.CommunicationPath; +import org.eclipse.uml2.uml.Component; +import org.eclipse.uml2.uml.ComponentRealization; +import org.eclipse.uml2.uml.ConditionalNode; +import org.eclipse.uml2.uml.ConnectionPointReference; +import org.eclipse.uml2.uml.Connector; +import org.eclipse.uml2.uml.ConsiderIgnoreFragment; +import org.eclipse.uml2.uml.Constraint; +import org.eclipse.uml2.uml.Continuation; +import org.eclipse.uml2.uml.ControlFlow; +import org.eclipse.uml2.uml.CreateLinkAction; +import org.eclipse.uml2.uml.CreateLinkObjectAction; +import org.eclipse.uml2.uml.CreateObjectAction; +import org.eclipse.uml2.uml.DataStoreNode; +import org.eclipse.uml2.uml.DataType; +import org.eclipse.uml2.uml.DecisionNode; +import org.eclipse.uml2.uml.Dependency; +import org.eclipse.uml2.uml.Deployment; +import org.eclipse.uml2.uml.DeploymentSpecification; +import org.eclipse.uml2.uml.DestroyLinkAction; +import org.eclipse.uml2.uml.DestroyObjectAction; +import org.eclipse.uml2.uml.DestructionOccurrenceSpecification; +import org.eclipse.uml2.uml.Device; +import org.eclipse.uml2.uml.Duration; +import org.eclipse.uml2.uml.DurationConstraint; +import org.eclipse.uml2.uml.DurationInterval; +import org.eclipse.uml2.uml.DurationObservation; +import org.eclipse.uml2.uml.Element; +import org.eclipse.uml2.uml.Enumeration; +import org.eclipse.uml2.uml.EnumerationLiteral; +import org.eclipse.uml2.uml.ExecutionEnvironment; +import org.eclipse.uml2.uml.ExecutionOccurrenceSpecification; +import org.eclipse.uml2.uml.ExpansionNode; +import org.eclipse.uml2.uml.ExpansionRegion; +import org.eclipse.uml2.uml.Expression; +import org.eclipse.uml2.uml.Extend; +import org.eclipse.uml2.uml.Extension; +import org.eclipse.uml2.uml.ExtensionEnd; +import org.eclipse.uml2.uml.ExtensionPoint; +import org.eclipse.uml2.uml.FinalState; +import org.eclipse.uml2.uml.FlowFinalNode; +import org.eclipse.uml2.uml.ForkNode; +import org.eclipse.uml2.uml.FunctionBehavior; +import org.eclipse.uml2.uml.Gate; +import org.eclipse.uml2.uml.GeneralOrdering; +import org.eclipse.uml2.uml.GeneralizationSet; +import org.eclipse.uml2.uml.Include; +import org.eclipse.uml2.uml.InformationFlow; +import org.eclipse.uml2.uml.InformationItem; +import org.eclipse.uml2.uml.InitialNode; +import org.eclipse.uml2.uml.InputPin; +import org.eclipse.uml2.uml.InstanceSpecification; +import org.eclipse.uml2.uml.InstanceValue; +import org.eclipse.uml2.uml.Interaction; +import org.eclipse.uml2.uml.InteractionConstraint; +import org.eclipse.uml2.uml.InteractionOperand; +import org.eclipse.uml2.uml.InteractionUse; +import org.eclipse.uml2.uml.Interface; +import org.eclipse.uml2.uml.InterfaceRealization; +import org.eclipse.uml2.uml.InterruptibleActivityRegion; +import org.eclipse.uml2.uml.Interval; +import org.eclipse.uml2.uml.IntervalConstraint; +import org.eclipse.uml2.uml.JoinNode; +import org.eclipse.uml2.uml.Lifeline; +import org.eclipse.uml2.uml.LiteralBoolean; +import org.eclipse.uml2.uml.LiteralInteger; +import org.eclipse.uml2.uml.LiteralNull; +import org.eclipse.uml2.uml.LiteralReal; +import org.eclipse.uml2.uml.LiteralString; +import org.eclipse.uml2.uml.LiteralUnlimitedNatural; +import org.eclipse.uml2.uml.LoopNode; +import org.eclipse.uml2.uml.Manifestation; +import org.eclipse.uml2.uml.MergeNode; +import org.eclipse.uml2.uml.Message; +import org.eclipse.uml2.uml.MessageOccurrenceSpecification; +import org.eclipse.uml2.uml.Model; +import org.eclipse.uml2.uml.Node; +import org.eclipse.uml2.uml.ObjectFlow; +import org.eclipse.uml2.uml.OccurrenceSpecification; +import org.eclipse.uml2.uml.OpaqueAction; +import org.eclipse.uml2.uml.OpaqueBehavior; +import org.eclipse.uml2.uml.OpaqueExpression; +import org.eclipse.uml2.uml.Operation; +import org.eclipse.uml2.uml.OutputPin; +import org.eclipse.uml2.uml.Parameter; +import org.eclipse.uml2.uml.ParameterSet; +import org.eclipse.uml2.uml.PartDecomposition; +import org.eclipse.uml2.uml.Port; +import org.eclipse.uml2.uml.PrimitiveType; +import org.eclipse.uml2.uml.Profile; +import org.eclipse.uml2.uml.Property; +import org.eclipse.uml2.uml.ProtocolStateMachine; +import org.eclipse.uml2.uml.ProtocolTransition; +import org.eclipse.uml2.uml.Pseudostate; +import org.eclipse.uml2.uml.RaiseExceptionAction; +import org.eclipse.uml2.uml.ReadExtentAction; +import org.eclipse.uml2.uml.ReadIsClassifiedObjectAction; +import org.eclipse.uml2.uml.ReadLinkAction; +import org.eclipse.uml2.uml.ReadLinkObjectEndAction; +import org.eclipse.uml2.uml.ReadLinkObjectEndQualifierAction; +import org.eclipse.uml2.uml.ReadSelfAction; +import org.eclipse.uml2.uml.ReadStructuralFeatureAction; +import org.eclipse.uml2.uml.ReadVariableAction; +import org.eclipse.uml2.uml.Realization; +import org.eclipse.uml2.uml.Reception; +import org.eclipse.uml2.uml.ReclassifyObjectAction; +import org.eclipse.uml2.uml.RedefinableTemplateSignature; +import org.eclipse.uml2.uml.ReduceAction; +import org.eclipse.uml2.uml.Region; +import org.eclipse.uml2.uml.RemoveStructuralFeatureValueAction; +import org.eclipse.uml2.uml.RemoveVariableValueAction; +import org.eclipse.uml2.uml.ReplyAction; +import org.eclipse.uml2.uml.SendObjectAction; +import org.eclipse.uml2.uml.SendSignalAction; +import org.eclipse.uml2.uml.SequenceNode; +import org.eclipse.uml2.uml.Signal; +import org.eclipse.uml2.uml.SignalEvent; +import org.eclipse.uml2.uml.StartClassifierBehaviorAction; +import org.eclipse.uml2.uml.StartObjectBehaviorAction; +import org.eclipse.uml2.uml.State; +import org.eclipse.uml2.uml.StateInvariant; +import org.eclipse.uml2.uml.StateMachine; +import org.eclipse.uml2.uml.Stereotype; +import org.eclipse.uml2.uml.StringExpression; +import org.eclipse.uml2.uml.StructuredActivityNode; +import org.eclipse.uml2.uml.Substitution; +import org.eclipse.uml2.uml.TemplateParameter; +import org.eclipse.uml2.uml.TestIdentityAction; +import org.eclipse.uml2.uml.TimeConstraint; +import org.eclipse.uml2.uml.TimeEvent; +import org.eclipse.uml2.uml.TimeExpression; +import org.eclipse.uml2.uml.TimeInterval; +import org.eclipse.uml2.uml.TimeObservation; +import org.eclipse.uml2.uml.Transition; +import org.eclipse.uml2.uml.Trigger; +import org.eclipse.uml2.uml.UnmarshallAction; +import org.eclipse.uml2.uml.Usage; +import org.eclipse.uml2.uml.UseCase; +import org.eclipse.uml2.uml.ValuePin; +import org.eclipse.uml2.uml.ValueSpecificationAction; +import org.eclipse.uml2.uml.Variable; + +/** + * @author Eike Stepper + */ +public class AbstractionTest + extends _Abstract_Compliance_Test_ { + + public void testEAnnotations() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + + EAnnotation eAnnotation = ECORE.createEAnnotation(); + assertValid(eAnnotation); + abstraction.getEAnnotations().add(eAnnotation); + } + + public void testOwnedComment() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + + Comment comment = UML.createComment(); + assertValid(comment); + abstraction.getOwnedComments().add(comment); + assertSuperset(abstraction.getOwnedElements().contains(comment)); + } + + public void testOwnedElement() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + EList<Element> elements = abstraction.getOwnedElements(); + EList<Element> elements2 = abstraction.getOwnedElements(); + assertSame(elements, elements2); + } + + public void testClientDependency() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + EList<Dependency> dependencys = abstraction.getClientDependencies(); + EList<Dependency> dependencys2 = abstraction.getClientDependencies(); + assertSame(dependencys, dependencys2); + } + + public void testNameExpression() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + + StringExpression stringExpression = UML.createStringExpression(); + assertValid(stringExpression); + abstraction.setNameExpression(stringExpression); + assertSuperset( + abstraction.getOwnedElements().contains(stringExpression)); + } + + public void testOwningTemplateParameter() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + + TemplateParameter templateParameter = UML.createTemplateParameter(); + assertValid(templateParameter); + abstraction.setOwningTemplateParameter(templateParameter); + assertSuperset(abstraction.getOwner() == templateParameter); + assertSuperset(abstraction.getTemplateParameter() == templateParameter); + } + + public void testTemplateParameter() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + + TemplateParameter templateParameter = UML.createTemplateParameter(); + assertValid(templateParameter); + abstraction.setTemplateParameter(templateParameter); + } + + public void testRelatedElement() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + EList<Element> elements = abstraction.getRelatedElements(); + EList<Element> elements2 = abstraction.getRelatedElements(); + assertSame(elements, elements2); + } + + public void testSource() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + EList<Element> elements = abstraction.getSources(); + EList<Element> elements2 = abstraction.getSources(); + assertSame(elements, elements2); + } + + public void testTarget() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + EList<Element> elements = abstraction.getTargets(); + EList<Element> elements2 = abstraction.getTargets(); + assertSame(elements, elements2); + } + + public void testClient() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + + Activity activity = UML.createActivity(); + assertValid(activity); + abstraction.getClients().add(activity); + assertSuperset(abstraction.getSources().contains(activity)); + + CommunicationPath communicationPath = UML.createCommunicationPath(); + assertValid(communicationPath); + abstraction.getClients().add(communicationPath); + assertSuperset(abstraction.getSources().contains(communicationPath)); + + ReadSelfAction readSelfAction = UML.createReadSelfAction(); + assertValid(readSelfAction); + abstraction.getClients().add(readSelfAction); + assertSuperset(abstraction.getSources().contains(readSelfAction)); + + ActivityPartition activityPartition = UML.createActivityPartition(); + assertValid(activityPartition); + abstraction.getClients().add(activityPartition); + assertSuperset(abstraction.getSources().contains(activityPartition)); + + InputPin inputPin = UML.createInputPin(); + assertValid(inputPin); + abstraction.getClients().add(inputPin); + assertSuperset(abstraction.getSources().contains(inputPin)); + + ReadLinkObjectEndQualifierAction readLinkObjectEndQualifierAction = UML + .createReadLinkObjectEndQualifierAction(); + assertValid(readLinkObjectEndQualifierAction); + abstraction.getClients().add(readLinkObjectEndQualifierAction); + assertSuperset(abstraction.getSources() + .contains(readLinkObjectEndQualifierAction)); + + Component component = UML.createComponent(); + assertValid(component); + abstraction.getClients().add(component); + assertSuperset(abstraction.getSources().contains(component)); + + Manifestation manifestation = UML.createManifestation(); + assertValid(manifestation); + abstraction.getClients().add(manifestation); + assertSuperset(abstraction.getSources().contains(manifestation)); + + DurationObservation durationObservation = UML + .createDurationObservation(); + assertValid(durationObservation); + abstraction.getClients().add(durationObservation); + assertSuperset(abstraction.getSources().contains(durationObservation)); + + CallEvent callEvent = UML.createCallEvent(); + assertValid(callEvent); + abstraction.getClients().add(callEvent); + assertSuperset(abstraction.getSources().contains(callEvent)); + + JoinNode joinNode = UML.createJoinNode(); + assertValid(joinNode); + abstraction.getClients().add(joinNode); + assertSuperset(abstraction.getSources().contains(joinNode)); + + Interaction interaction = UML.createInteraction(); + assertValid(interaction); + abstraction.getClients().add(interaction); + assertSuperset(abstraction.getSources().contains(interaction)); + + CreateLinkObjectAction createLinkObjectAction = UML + .createCreateLinkObjectAction(); + assertValid(createLinkObjectAction); + abstraction.getClients().add(createLinkObjectAction); + assertSuperset( + abstraction.getSources().contains(createLinkObjectAction)); + + OpaqueBehavior opaqueBehavior = UML.createOpaqueBehavior(); + assertValid(opaqueBehavior); + abstraction.getClients().add(opaqueBehavior); + assertSuperset(abstraction.getSources().contains(opaqueBehavior)); + + LiteralUnlimitedNatural literalUnlimitedNatural = UML + .createLiteralUnlimitedNatural(); + assertValid(literalUnlimitedNatural); + abstraction.getClients().add(literalUnlimitedNatural); + assertSuperset( + abstraction.getSources().contains(literalUnlimitedNatural)); + + SendSignalAction sendSignalAction = UML.createSendSignalAction(); + assertValid(sendSignalAction); + abstraction.getClients().add(sendSignalAction); + assertSuperset(abstraction.getSources().contains(sendSignalAction)); + + ReadLinkAction readLinkAction = UML.createReadLinkAction(); + assertValid(readLinkAction); + abstraction.getClients().add(readLinkAction); + assertSuperset(abstraction.getSources().contains(readLinkAction)); + + Operation operation = UML.createOperation(); + assertValid(operation); + abstraction.getClients().add(operation); + assertSuperset(abstraction.getSources().contains(operation)); + + ClearAssociationAction clearAssociationAction = UML + .createClearAssociationAction(); + assertValid(clearAssociationAction); + abstraction.getClients().add(clearAssociationAction); + assertSuperset( + abstraction.getSources().contains(clearAssociationAction)); + + Model model = UML.createModel(); + assertValid(model); + abstraction.getClients().add(model); + assertSuperset(abstraction.getSources().contains(model)); + + Parameter parameter = UML.createParameter(); + assertValid(parameter); + abstraction.getClients().add(parameter); + assertSuperset(abstraction.getSources().contains(parameter)); + + InstanceValue instanceValue = UML.createInstanceValue(); + assertValid(instanceValue); + abstraction.getClients().add(instanceValue); + assertSuperset(abstraction.getSources().contains(instanceValue)); + + Trigger trigger = UML.createTrigger(); + assertValid(trigger); + abstraction.getClients().add(trigger); + assertSuperset(abstraction.getSources().contains(trigger)); + + InteractionConstraint interactionConstraint = UML + .createInteractionConstraint(); + assertValid(interactionConstraint); + abstraction.getClients().add(interactionConstraint); + assertSuperset( + abstraction.getSources().contains(interactionConstraint)); + + AssociationClass associationClass = UML.createAssociationClass(); + assertValid(associationClass); + abstraction.getClients().add(associationClass); + assertSuperset(abstraction.getSources().contains(associationClass)); + + InteractionUse interactionUse = UML.createInteractionUse(); + assertValid(interactionUse); + abstraction.getClients().add(interactionUse); + assertSuperset(abstraction.getSources().contains(interactionUse)); + + ClearStructuralFeatureAction clearStructuralFeatureAction = UML + .createClearStructuralFeatureAction(); + assertValid(clearStructuralFeatureAction); + abstraction.getClients().add(clearStructuralFeatureAction); + assertSuperset( + abstraction.getSources().contains(clearStructuralFeatureAction)); + + Interval interval = UML.createInterval(); + assertValid(interval); + abstraction.getClients().add(interval); + assertSuperset(abstraction.getSources().contains(interval)); + + StructuredActivityNode structuredActivityNode = UML + .createStructuredActivityNode(); + assertValid(structuredActivityNode); + abstraction.getClients().add(structuredActivityNode); + assertSuperset( + abstraction.getSources().contains(structuredActivityNode)); + + LiteralString literalString = UML.createLiteralString(); + assertValid(literalString); + abstraction.getClients().add(literalString); + assertSuperset(abstraction.getSources().contains(literalString)); + + ValuePin valuePin = UML.createValuePin(); + assertValid(valuePin); + abstraction.getClients().add(valuePin); + assertSuperset(abstraction.getSources().contains(valuePin)); + + InterfaceRealization interfaceRealization = UML + .createInterfaceRealization(); + assertValid(interfaceRealization); + abstraction.getClients().add(interfaceRealization); + assertSuperset(abstraction.getSources().contains(interfaceRealization)); + + ForkNode forkNode = UML.createForkNode(); + assertValid(forkNode); + abstraction.getClients().add(forkNode); + assertSuperset(abstraction.getSources().contains(forkNode)); + + DecisionNode decisionNode = UML.createDecisionNode(); + assertValid(decisionNode); + abstraction.getClients().add(decisionNode); + assertSuperset(abstraction.getSources().contains(decisionNode)); + + Actor actor = UML.createActor(); + assertValid(actor); + abstraction.getClients().add(actor); + assertSuperset(abstraction.getSources().contains(actor)); + + TimeConstraint timeConstraint = UML.createTimeConstraint(); + assertValid(timeConstraint); + abstraction.getClients().add(timeConstraint); + assertSuperset(abstraction.getSources().contains(timeConstraint)); + + Reception reception = UML.createReception(); + assertValid(reception); + abstraction.getClients().add(reception); + assertSuperset(abstraction.getSources().contains(reception)); + + Pseudostate pseudostate = UML.createPseudostate(); + assertValid(pseudostate); + abstraction.getClients().add(pseudostate); + assertSuperset(abstraction.getSources().contains(pseudostate)); + + DurationInterval durationInterval = UML.createDurationInterval(); + assertValid(durationInterval); + abstraction.getClients().add(durationInterval); + assertSuperset(abstraction.getSources().contains(durationInterval)); + + Deployment deployment = UML.createDeployment(); + assertValid(deployment); + abstraction.getClients().add(deployment); + assertSuperset(abstraction.getSources().contains(deployment)); + + ExtensionEnd extensionEnd = UML.createExtensionEnd(); + assertValid(extensionEnd); + abstraction.getClients().add(extensionEnd); + assertSuperset(abstraction.getSources().contains(extensionEnd)); + + ConsiderIgnoreFragment considerIgnoreFragment = UML + .createConsiderIgnoreFragment(); + assertValid(considerIgnoreFragment); + abstraction.getClients().add(considerIgnoreFragment); + assertSuperset( + abstraction.getSources().contains(considerIgnoreFragment)); + + ConditionalNode conditionalNode = UML.createConditionalNode(); + assertValid(conditionalNode); + abstraction.getClients().add(conditionalNode); + assertSuperset(abstraction.getSources().contains(conditionalNode)); + + ReadExtentAction readExtentAction = UML.createReadExtentAction(); + assertValid(readExtentAction); + abstraction.getClients().add(readExtentAction); + assertSuperset(abstraction.getSources().contains(readExtentAction)); + + ActionInputPin actionInputPin = UML.createActionInputPin(); + assertValid(actionInputPin); + abstraction.getClients().add(actionInputPin); + assertSuperset(abstraction.getSources().contains(actionInputPin)); + + Artifact artifact = UML.createArtifact(); + assertValid(artifact); + abstraction.getClients().add(artifact); + assertSuperset(abstraction.getSources().contains(artifact)); + + InformationFlow informationFlow = UML.createInformationFlow(); + assertValid(informationFlow); + abstraction.getClients().add(informationFlow); + assertSuperset(abstraction.getSources().contains(informationFlow)); + + ClearVariableAction clearVariableAction = UML + .createClearVariableAction(); + assertValid(clearVariableAction); + abstraction.getClients().add(clearVariableAction); + assertSuperset(abstraction.getSources().contains(clearVariableAction)); + + CreateLinkAction createLinkAction = UML.createCreateLinkAction(); + assertValid(createLinkAction); + abstraction.getClients().add(createLinkAction); + assertSuperset(abstraction.getSources().contains(createLinkAction)); + + SignalEvent signalEvent = UML.createSignalEvent(); + assertValid(signalEvent); + abstraction.getClients().add(signalEvent); + assertSuperset(abstraction.getSources().contains(signalEvent)); + + ConnectionPointReference connectionPointReference = UML + .createConnectionPointReference(); + assertValid(connectionPointReference); + abstraction.getClients().add(connectionPointReference); + assertSuperset( + abstraction.getSources().contains(connectionPointReference)); + + ReclassifyObjectAction reclassifyObjectAction = UML + .createReclassifyObjectAction(); + assertValid(reclassifyObjectAction); + abstraction.getClients().add(reclassifyObjectAction); + assertSuperset( + abstraction.getSources().contains(reclassifyObjectAction)); + + Usage usage = UML.createUsage(); + assertValid(usage); + abstraction.getClients().add(usage); + assertSuperset(abstraction.getSources().contains(usage)); + + DataStoreNode dataStoreNode = UML.createDataStoreNode(); + assertValid(dataStoreNode); + abstraction.getClients().add(dataStoreNode); + assertSuperset(abstraction.getSources().contains(dataStoreNode)); + + ExecutionEnvironment executionEnvironment = UML + .createExecutionEnvironment(); + assertValid(executionEnvironment); + abstraction.getClients().add(executionEnvironment); + assertSuperset(abstraction.getSources().contains(executionEnvironment)); + + SendObjectAction sendObjectAction = UML.createSendObjectAction(); + assertValid(sendObjectAction); + abstraction.getClients().add(sendObjectAction); + assertSuperset(abstraction.getSources().contains(sendObjectAction)); + + ControlFlow controlFlow = UML.createControlFlow(); + assertValid(controlFlow); + abstraction.getClients().add(controlFlow); + assertSuperset(abstraction.getSources().contains(controlFlow)); + + DeploymentSpecification deploymentSpecification = UML + .createDeploymentSpecification(); + assertValid(deploymentSpecification); + abstraction.getClients().add(deploymentSpecification); + assertSuperset( + abstraction.getSources().contains(deploymentSpecification)); + + PartDecomposition partDecomposition = UML.createPartDecomposition(); + assertValid(partDecomposition); + abstraction.getClients().add(partDecomposition); + assertSuperset(abstraction.getSources().contains(partDecomposition)); + + DestroyLinkAction destroyLinkAction = UML.createDestroyLinkAction(); + assertValid(destroyLinkAction); + abstraction.getClients().add(destroyLinkAction); + assertSuperset(abstraction.getSources().contains(destroyLinkAction)); + + Realization realization = UML.createRealization(); + assertValid(realization); + abstraction.getClients().add(realization); + assertSuperset(abstraction.getSources().contains(realization)); + + ExpansionNode expansionNode = UML.createExpansionNode(); + assertValid(expansionNode); + abstraction.getClients().add(expansionNode); + assertSuperset(abstraction.getSources().contains(expansionNode)); + + TestIdentityAction testIdentityAction = UML.createTestIdentityAction(); + assertValid(testIdentityAction); + abstraction.getClients().add(testIdentityAction); + assertSuperset(abstraction.getSources().contains(testIdentityAction)); + + Association association = UML.createAssociation(); + assertValid(association); + abstraction.getClients().add(association); + assertSuperset(abstraction.getSources().contains(association)); + + TimeInterval timeInterval = UML.createTimeInterval(); + assertValid(timeInterval); + abstraction.getClients().add(timeInterval); + assertSuperset(abstraction.getSources().contains(timeInterval)); + + DataType dataType = UML.createDataType(); + assertValid(dataType); + abstraction.getClients().add(dataType); + assertSuperset(abstraction.getSources().contains(dataType)); + + OutputPin outputPin = UML.createOutputPin(); + assertValid(outputPin); + abstraction.getClients().add(outputPin); + assertSuperset(abstraction.getSources().contains(outputPin)); + + Substitution substitution = UML.createSubstitution(); + assertValid(substitution); + abstraction.getClients().add(substitution); + assertSuperset(abstraction.getSources().contains(substitution)); + + Include include = UML.createInclude(); + assertValid(include); + abstraction.getClients().add(include); + assertSuperset(abstraction.getSources().contains(include)); + + Extend extend = UML.createExtend(); + assertValid(extend); + abstraction.getClients().add(extend); + assertSuperset(abstraction.getSources().contains(extend)); + + BroadcastSignalAction broadcastSignalAction = UML + .createBroadcastSignalAction(); + assertValid(broadcastSignalAction); + abstraction.getClients().add(broadcastSignalAction); + assertSuperset( + abstraction.getSources().contains(broadcastSignalAction)); + + LiteralBoolean literalBoolean = UML.createLiteralBoolean(); + assertValid(literalBoolean); + abstraction.getClients().add(literalBoolean); + assertSuperset(abstraction.getSources().contains(literalBoolean)); + + FinalState finalState = UML.createFinalState(); + assertValid(finalState); + abstraction.getClients().add(finalState); + assertSuperset(abstraction.getSources().contains(finalState)); + + RaiseExceptionAction raiseExceptionAction = UML + .createRaiseExceptionAction(); + assertValid(raiseExceptionAction); + abstraction.getClients().add(raiseExceptionAction); + assertSuperset(abstraction.getSources().contains(raiseExceptionAction)); + + DurationConstraint durationConstraint = UML.createDurationConstraint(); + assertValid(durationConstraint); + abstraction.getClients().add(durationConstraint); + assertSuperset(abstraction.getSources().contains(durationConstraint)); + + ActivityFinalNode activityFinalNode = UML.createActivityFinalNode(); + assertValid(activityFinalNode); + abstraction.getClients().add(activityFinalNode); + assertSuperset(abstraction.getSources().contains(activityFinalNode)); + + LiteralNull literalNull = UML.createLiteralNull(); + assertValid(literalNull); + abstraction.getClients().add(literalNull); + assertSuperset(abstraction.getSources().contains(literalNull)); + + CallOperationAction callOperationAction = UML + .createCallOperationAction(); + assertValid(callOperationAction); + abstraction.getClients().add(callOperationAction); + assertSuperset(abstraction.getSources().contains(callOperationAction)); + + ProtocolStateMachine protocolStateMachine = UML + .createProtocolStateMachine(); + assertValid(protocolStateMachine); + abstraction.getClients().add(protocolStateMachine); + assertSuperset(abstraction.getSources().contains(protocolStateMachine)); + + LoopNode loopNode = UML.createLoopNode(); + assertValid(loopNode); + abstraction.getClients().add(loopNode); + assertSuperset(abstraction.getSources().contains(loopNode)); + + ParameterSet parameterSet = UML.createParameterSet(); + assertValid(parameterSet); + abstraction.getClients().add(parameterSet); + assertSuperset(abstraction.getSources().contains(parameterSet)); + + ValueSpecificationAction valueSpecificationAction = UML + .createValueSpecificationAction(); + assertValid(valueSpecificationAction); + abstraction.getClients().add(valueSpecificationAction); + assertSuperset( + abstraction.getSources().contains(valueSpecificationAction)); + + Node node = UML.createNode(); + assertValid(node); + abstraction.getClients().add(node); + assertSuperset(abstraction.getSources().contains(node)); + + SequenceNode sequenceNode = UML.createSequenceNode(); + assertValid(sequenceNode); + abstraction.getClients().add(sequenceNode); + assertSuperset(abstraction.getSources().contains(sequenceNode)); + + Constraint constraint = UML.createConstraint(); + assertValid(constraint); + abstraction.getClients().add(constraint); + assertSuperset(abstraction.getSources().contains(constraint)); + + DestroyObjectAction destroyObjectAction = UML + .createDestroyObjectAction(); + assertValid(destroyObjectAction); + abstraction.getClients().add(destroyObjectAction); + assertSuperset(abstraction.getSources().contains(destroyObjectAction)); + + StateMachine stateMachine = UML.createStateMachine(); + assertValid(stateMachine); + abstraction.getClients().add(stateMachine); + assertSuperset(abstraction.getSources().contains(stateMachine)); + + EnumerationLiteral enumerationLiteral = UML.createEnumerationLiteral(); + assertValid(enumerationLiteral); + abstraction.getClients().add(enumerationLiteral); + assertSuperset(abstraction.getSources().contains(enumerationLiteral)); + + ActionExecutionSpecification actionExecutionSpecification = UML + .createActionExecutionSpecification(); + assertValid(actionExecutionSpecification); + abstraction.getClients().add(actionExecutionSpecification); + assertSuperset( + abstraction.getSources().contains(actionExecutionSpecification)); + + FunctionBehavior functionBehavior = UML.createFunctionBehavior(); + assertValid(functionBehavior); + abstraction.getClients().add(functionBehavior); + assertSuperset(abstraction.getSources().contains(functionBehavior)); + + Interface interface_ = UML.createInterface(); + assertValid(interface_); + abstraction.getClients().add(interface_); + assertSuperset(abstraction.getSources().contains(interface_)); + + InstanceSpecification instanceSpecification = UML + .createInstanceSpecification(); + assertValid(instanceSpecification); + abstraction.getClients().add(instanceSpecification); + assertSuperset( + abstraction.getSources().contains(instanceSpecification)); + + StartClassifierBehaviorAction startClassifierBehaviorAction = UML + .createStartClassifierBehaviorAction(); + assertValid(startClassifierBehaviorAction); + abstraction.getClients().add(startClassifierBehaviorAction); + assertSuperset( + abstraction.getSources().contains(startClassifierBehaviorAction)); + + Port port = UML.createPort(); + assertValid(port); + abstraction.getClients().add(port); + assertSuperset(abstraction.getSources().contains(port)); + + RemoveVariableValueAction removeVariableValueAction = UML + .createRemoveVariableValueAction(); + assertValid(removeVariableValueAction); + abstraction.getClients().add(removeVariableValueAction); + assertSuperset( + abstraction.getSources().contains(removeVariableValueAction)); + + InformationItem informationItem = UML.createInformationItem(); + assertValid(informationItem); + abstraction.getClients().add(informationItem); + assertSuperset(abstraction.getSources().contains(informationItem)); + + LiteralReal literalReal = UML.createLiteralReal(); + assertValid(literalReal); + abstraction.getClients().add(literalReal); + assertSuperset(abstraction.getSources().contains(literalReal)); + + RedefinableTemplateSignature redefinableTemplateSignature = UML + .createRedefinableTemplateSignature(); + assertValid(redefinableTemplateSignature); + abstraction.getClients().add(redefinableTemplateSignature); + assertSuperset( + abstraction.getSources().contains(redefinableTemplateSignature)); + + ExecutionOccurrenceSpecification executionOccurrenceSpecification = UML + .createExecutionOccurrenceSpecification(); + assertValid(executionOccurrenceSpecification); + abstraction.getClients().add(executionOccurrenceSpecification); + assertSuperset(abstraction.getSources() + .contains(executionOccurrenceSpecification)); + + Duration duration = UML.createDuration(); + assertValid(duration); + abstraction.getClients().add(duration); + assertSuperset(abstraction.getSources().contains(duration)); + + org.eclipse.uml2.uml.Package package_ = UML.createPackage(); + assertValid(package_); + abstraction.getClients().add(package_); + assertSuperset(abstraction.getSources().contains(package_)); + + Variable variable = UML.createVariable(); + assertValid(variable); + abstraction.getClients().add(variable); + assertSuperset(abstraction.getSources().contains(variable)); + + DestructionOccurrenceSpecification destructionOccurrenceSpecification = UML + .createDestructionOccurrenceSpecification(); + assertValid(destructionOccurrenceSpecification); + abstraction.getClients().add(destructionOccurrenceSpecification); + assertSuperset(abstraction.getSources() + .contains(destructionOccurrenceSpecification)); + + Lifeline lifeline = UML.createLifeline(); + assertValid(lifeline); + abstraction.getClients().add(lifeline); + assertSuperset(abstraction.getSources().contains(lifeline)); + + TimeObservation timeObservation = UML.createTimeObservation(); + assertValid(timeObservation); + abstraction.getClients().add(timeObservation); + assertSuperset(abstraction.getSources().contains(timeObservation)); + + ReplyAction replyAction = UML.createReplyAction(); + assertValid(replyAction); + abstraction.getClients().add(replyAction); + assertSuperset(abstraction.getSources().contains(replyAction)); + + Gate gate = UML.createGate(); + assertValid(gate); + abstraction.getClients().add(gate); + assertSuperset(abstraction.getSources().contains(gate)); + + Property property = UML.createProperty(); + assertValid(property); + abstraction.getClients().add(property); + assertSuperset(abstraction.getSources().contains(property)); + + TimeExpression timeExpression = UML.createTimeExpression(); + assertValid(timeExpression); + abstraction.getClients().add(timeExpression); + assertSuperset(abstraction.getSources().contains(timeExpression)); + + Device device = UML.createDevice(); + assertValid(device); + abstraction.getClients().add(device); + assertSuperset(abstraction.getSources().contains(device)); + + FlowFinalNode flowFinalNode = UML.createFlowFinalNode(); + assertValid(flowFinalNode); + abstraction.getClients().add(flowFinalNode); + assertSuperset(abstraction.getSources().contains(flowFinalNode)); + + ExpansionRegion expansionRegion = UML.createExpansionRegion(); + assertValid(expansionRegion); + abstraction.getClients().add(expansionRegion); + assertSuperset(abstraction.getSources().contains(expansionRegion)); + + Abstraction abstraction2 = UML.createAbstraction(); + assertValid(abstraction2); + abstraction.getClients().add(abstraction2); + assertSuperset(abstraction.getSources().contains(abstraction2)); + + StartObjectBehaviorAction startObjectBehaviorAction = UML + .createStartObjectBehaviorAction(); + assertValid(startObjectBehaviorAction); + abstraction.getClients().add(startObjectBehaviorAction); + assertSuperset( + abstraction.getSources().contains(startObjectBehaviorAction)); + + Enumeration enumeration = UML.createEnumeration(); + assertValid(enumeration); + abstraction.getClients().add(enumeration); + assertSuperset(abstraction.getSources().contains(enumeration)); + + PrimitiveType primitiveType = UML.createPrimitiveType(); + assertValid(primitiveType); + abstraction.getClients().add(primitiveType); + assertSuperset(abstraction.getSources().contains(primitiveType)); + + Profile profile = UML.createProfile(); + assertValid(profile); + abstraction.getClients().add(profile); + assertSuperset(abstraction.getSources().contains(profile)); + + Message message = UML.createMessage(); + assertValid(message); + abstraction.getClients().add(message); + assertSuperset(abstraction.getSources().contains(message)); + + GeneralizationSet generalizationSet = UML.createGeneralizationSet(); + assertValid(generalizationSet); + abstraction.getClients().add(generalizationSet); + assertSuperset(abstraction.getSources().contains(generalizationSet)); + + Continuation continuation = UML.createContinuation(); + assertValid(continuation); + abstraction.getClients().add(continuation); + assertSuperset(abstraction.getSources().contains(continuation)); + + Signal signal = UML.createSignal(); + assertValid(signal); + abstraction.getClients().add(signal); + assertSuperset(abstraction.getSources().contains(signal)); + + CallBehaviorAction callBehaviorAction = UML.createCallBehaviorAction(); + assertValid(callBehaviorAction); + abstraction.getClients().add(callBehaviorAction); + assertSuperset(abstraction.getSources().contains(callBehaviorAction)); + + ObjectFlow objectFlow = UML.createObjectFlow(); + assertValid(objectFlow); + abstraction.getClients().add(objectFlow); + assertSuperset(abstraction.getSources().contains(objectFlow)); + + StateInvariant stateInvariant = UML.createStateInvariant(); + assertValid(stateInvariant); + abstraction.getClients().add(stateInvariant); + assertSuperset(abstraction.getSources().contains(stateInvariant)); + + ReadIsClassifiedObjectAction readIsClassifiedObjectAction = UML + .createReadIsClassifiedObjectAction(); + assertValid(readIsClassifiedObjectAction); + abstraction.getClients().add(readIsClassifiedObjectAction); + assertSuperset( + abstraction.getSources().contains(readIsClassifiedObjectAction)); + + ActivityParameterNode activityParameterNode = UML + .createActivityParameterNode(); + assertValid(activityParameterNode); + abstraction.getClients().add(activityParameterNode); + assertSuperset( + abstraction.getSources().contains(activityParameterNode)); + + AddStructuralFeatureValueAction addStructuralFeatureValueAction = UML + .createAddStructuralFeatureValueAction(); + assertValid(addStructuralFeatureValueAction); + abstraction.getClients().add(addStructuralFeatureValueAction); + assertSuperset( + abstraction.getSources().contains(addStructuralFeatureValueAction)); + + ReadVariableAction readVariableAction = UML.createReadVariableAction(); + assertValid(readVariableAction); + abstraction.getClients().add(readVariableAction); + assertSuperset(abstraction.getSources().contains(readVariableAction)); + + InterruptibleActivityRegion interruptibleActivityRegion = UML + .createInterruptibleActivityRegion(); + assertValid(interruptibleActivityRegion); + abstraction.getClients().add(interruptibleActivityRegion); + assertSuperset( + abstraction.getSources().contains(interruptibleActivityRegion)); + + RemoveStructuralFeatureValueAction removeStructuralFeatureValueAction = UML + .createRemoveStructuralFeatureValueAction(); + assertValid(removeStructuralFeatureValueAction); + abstraction.getClients().add(removeStructuralFeatureValueAction); + assertSuperset(abstraction.getSources() + .contains(removeStructuralFeatureValueAction)); + + OpaqueExpression opaqueExpression = UML.createOpaqueExpression(); + assertValid(opaqueExpression); + abstraction.getClients().add(opaqueExpression); + assertSuperset(abstraction.getSources().contains(opaqueExpression)); + + TimeEvent timeEvent = UML.createTimeEvent(); + assertValid(timeEvent); + abstraction.getClients().add(timeEvent); + assertSuperset(abstraction.getSources().contains(timeEvent)); + + GeneralOrdering generalOrdering = UML.createGeneralOrdering(); + assertValid(generalOrdering); + abstraction.getClients().add(generalOrdering); + assertSuperset(abstraction.getSources().contains(generalOrdering)); + + Region region = UML.createRegion(); + assertValid(region); + abstraction.getClients().add(region); + assertSuperset(abstraction.getSources().contains(region)); + + Transition transition = UML.createTransition(); + assertValid(transition); + abstraction.getClients().add(transition); + assertSuperset(abstraction.getSources().contains(transition)); + + AnyReceiveEvent anyReceiveEvent = UML.createAnyReceiveEvent(); + assertValid(anyReceiveEvent); + abstraction.getClients().add(anyReceiveEvent); + assertSuperset(abstraction.getSources().contains(anyReceiveEvent)); + + MessageOccurrenceSpecification messageOccurrenceSpecification = UML + .createMessageOccurrenceSpecification(); + assertValid(messageOccurrenceSpecification); + abstraction.getClients().add(messageOccurrenceSpecification); + assertSuperset( + abstraction.getSources().contains(messageOccurrenceSpecification)); + + LiteralInteger literalInteger = UML.createLiteralInteger(); + assertValid(literalInteger); + abstraction.getClients().add(literalInteger); + assertSuperset(abstraction.getSources().contains(literalInteger)); + + ReduceAction reduceAction = UML.createReduceAction(); + assertValid(reduceAction); + abstraction.getClients().add(reduceAction); + assertSuperset(abstraction.getSources().contains(reduceAction)); + + AcceptEventAction acceptEventAction = UML.createAcceptEventAction(); + assertValid(acceptEventAction); + abstraction.getClients().add(acceptEventAction); + assertSuperset(abstraction.getSources().contains(acceptEventAction)); + + InitialNode initialNode = UML.createInitialNode(); + assertValid(initialNode); + abstraction.getClients().add(initialNode); + assertSuperset(abstraction.getSources().contains(initialNode)); + + CentralBufferNode centralBufferNode = UML.createCentralBufferNode(); + assertValid(centralBufferNode); + abstraction.getClients().add(centralBufferNode); + assertSuperset(abstraction.getSources().contains(centralBufferNode)); + + CombinedFragment combinedFragment = UML.createCombinedFragment(); + assertValid(combinedFragment); + abstraction.getClients().add(combinedFragment); + assertSuperset(abstraction.getSources().contains(combinedFragment)); + + IntervalConstraint intervalConstraint = UML.createIntervalConstraint(); + assertValid(intervalConstraint); + abstraction.getClients().add(intervalConstraint); + assertSuperset(abstraction.getSources().contains(intervalConstraint)); + + Extension extension = UML.createExtension(); + assertValid(extension); + abstraction.getClients().add(extension); + assertSuperset(abstraction.getSources().contains(extension)); + + OccurrenceSpecification occurrenceSpecification = UML + .createOccurrenceSpecification(); + assertValid(occurrenceSpecification); + abstraction.getClients().add(occurrenceSpecification); + assertSuperset( + abstraction.getSources().contains(occurrenceSpecification)); + + ExtensionPoint extensionPoint = UML.createExtensionPoint(); + assertValid(extensionPoint); + abstraction.getClients().add(extensionPoint); + assertSuperset(abstraction.getSources().contains(extensionPoint)); + + Dependency dependency = UML.createDependency(); + assertValid(dependency); + abstraction.getClients().add(dependency); + assertSuperset(abstraction.getSources().contains(dependency)); + + Connector connector = UML.createConnector(); + assertValid(connector); + abstraction.getClients().add(connector); + assertSuperset(abstraction.getSources().contains(connector)); + + Expression expression = UML.createExpression(); + assertValid(expression); + abstraction.getClients().add(expression); + assertSuperset(abstraction.getSources().contains(expression)); + + ComponentRealization componentRealization = UML + .createComponentRealization(); + assertValid(componentRealization); + abstraction.getClients().add(componentRealization); + assertSuperset(abstraction.getSources().contains(componentRealization)); + + org.eclipse.uml2.uml.Class class_ = UML.createClass(); + assertValid(class_); + abstraction.getClients().add(class_); + assertSuperset(abstraction.getSources().contains(class_)); + + State state = UML.createState(); + assertValid(state); + abstraction.getClients().add(state); + assertSuperset(abstraction.getSources().contains(state)); + + ProtocolTransition protocolTransition = UML.createProtocolTransition(); + assertValid(protocolTransition); + abstraction.getClients().add(protocolTransition); + assertSuperset(abstraction.getSources().contains(protocolTransition)); + + BehaviorExecutionSpecification behaviorExecutionSpecification = UML + .createBehaviorExecutionSpecification(); + assertValid(behaviorExecutionSpecification); + abstraction.getClients().add(behaviorExecutionSpecification); + assertSuperset( + abstraction.getSources().contains(behaviorExecutionSpecification)); + + CollaborationUse collaborationUse = UML.createCollaborationUse(); + assertValid(collaborationUse); + abstraction.getClients().add(collaborationUse); + assertSuperset(abstraction.getSources().contains(collaborationUse)); + + InteractionOperand interactionOperand = UML.createInteractionOperand(); + assertValid(interactionOperand); + abstraction.getClients().add(interactionOperand); + assertSuperset(abstraction.getSources().contains(interactionOperand)); + + AcceptCallAction acceptCallAction = UML.createAcceptCallAction(); + assertValid(acceptCallAction); + abstraction.getClients().add(acceptCallAction); + assertSuperset(abstraction.getSources().contains(acceptCallAction)); + + AddVariableValueAction addVariableValueAction = UML + .createAddVariableValueAction(); + assertValid(addVariableValueAction); + abstraction.getClients().add(addVariableValueAction); + assertSuperset( + abstraction.getSources().contains(addVariableValueAction)); + + ReadLinkObjectEndAction readLinkObjectEndAction = UML + .createReadLinkObjectEndAction(); + assertValid(readLinkObjectEndAction); + abstraction.getClients().add(readLinkObjectEndAction); + assertSuperset( + abstraction.getSources().contains(readLinkObjectEndAction)); + + UseCase useCase = UML.createUseCase(); + assertValid(useCase); + abstraction.getClients().add(useCase); + assertSuperset(abstraction.getSources().contains(useCase)); + + UnmarshallAction unmarshallAction = UML.createUnmarshallAction(); + assertValid(unmarshallAction); + abstraction.getClients().add(unmarshallAction); + assertSuperset(abstraction.getSources().contains(unmarshallAction)); + + OpaqueAction opaqueAction = UML.createOpaqueAction(); + assertValid(opaqueAction); + abstraction.getClients().add(opaqueAction); + assertSuperset(abstraction.getSources().contains(opaqueAction)); + + StringExpression stringExpression = UML.createStringExpression(); + assertValid(stringExpression); + abstraction.getClients().add(stringExpression); + assertSuperset(abstraction.getSources().contains(stringExpression)); + + MergeNode mergeNode = UML.createMergeNode(); + assertValid(mergeNode); + abstraction.getClients().add(mergeNode); + assertSuperset(abstraction.getSources().contains(mergeNode)); + + ChangeEvent changeEvent = UML.createChangeEvent(); + assertValid(changeEvent); + abstraction.getClients().add(changeEvent); + assertSuperset(abstraction.getSources().contains(changeEvent)); + + CreateObjectAction createObjectAction = UML.createCreateObjectAction(); + assertValid(createObjectAction); + abstraction.getClients().add(createObjectAction); + assertSuperset(abstraction.getSources().contains(createObjectAction)); + + Stereotype stereotype = UML.createStereotype(); + assertValid(stereotype); + abstraction.getClients().add(stereotype); + assertSuperset(abstraction.getSources().contains(stereotype)); + + ReadStructuralFeatureAction readStructuralFeatureAction = UML + .createReadStructuralFeatureAction(); + assertValid(readStructuralFeatureAction); + abstraction.getClients().add(readStructuralFeatureAction); + assertSuperset( + abstraction.getSources().contains(readStructuralFeatureAction)); + + Collaboration collaboration = UML.createCollaboration(); + assertValid(collaboration); + abstraction.getClients().add(collaboration); + assertSuperset(abstraction.getSources().contains(collaboration)); + } + + public void testSupplier() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + + Activity activity = UML.createActivity(); + assertValid(activity); + abstraction.getSuppliers().add(activity); + assertSuperset(abstraction.getTargets().contains(activity)); + + CommunicationPath communicationPath = UML.createCommunicationPath(); + assertValid(communicationPath); + abstraction.getSuppliers().add(communicationPath); + assertSuperset(abstraction.getTargets().contains(communicationPath)); + + ReadSelfAction readSelfAction = UML.createReadSelfAction(); + assertValid(readSelfAction); + abstraction.getSuppliers().add(readSelfAction); + assertSuperset(abstraction.getTargets().contains(readSelfAction)); + + ActivityPartition activityPartition = UML.createActivityPartition(); + assertValid(activityPartition); + abstraction.getSuppliers().add(activityPartition); + assertSuperset(abstraction.getTargets().contains(activityPartition)); + + InputPin inputPin = UML.createInputPin(); + assertValid(inputPin); + abstraction.getSuppliers().add(inputPin); + assertSuperset(abstraction.getTargets().contains(inputPin)); + + ReadLinkObjectEndQualifierAction readLinkObjectEndQualifierAction = UML + .createReadLinkObjectEndQualifierAction(); + assertValid(readLinkObjectEndQualifierAction); + abstraction.getSuppliers().add(readLinkObjectEndQualifierAction); + assertSuperset(abstraction.getTargets() + .contains(readLinkObjectEndQualifierAction)); + + Component component = UML.createComponent(); + assertValid(component); + abstraction.getSuppliers().add(component); + assertSuperset(abstraction.getTargets().contains(component)); + + Manifestation manifestation = UML.createManifestation(); + assertValid(manifestation); + abstraction.getSuppliers().add(manifestation); + assertSuperset(abstraction.getTargets().contains(manifestation)); + + DurationObservation durationObservation = UML + .createDurationObservation(); + assertValid(durationObservation); + abstraction.getSuppliers().add(durationObservation); + assertSuperset(abstraction.getTargets().contains(durationObservation)); + + CallEvent callEvent = UML.createCallEvent(); + assertValid(callEvent); + abstraction.getSuppliers().add(callEvent); + assertSuperset(abstraction.getTargets().contains(callEvent)); + + JoinNode joinNode = UML.createJoinNode(); + assertValid(joinNode); + abstraction.getSuppliers().add(joinNode); + assertSuperset(abstraction.getTargets().contains(joinNode)); + + Interaction interaction = UML.createInteraction(); + assertValid(interaction); + abstraction.getSuppliers().add(interaction); + assertSuperset(abstraction.getTargets().contains(interaction)); + + CreateLinkObjectAction createLinkObjectAction = UML + .createCreateLinkObjectAction(); + assertValid(createLinkObjectAction); + abstraction.getSuppliers().add(createLinkObjectAction); + assertSuperset( + abstraction.getTargets().contains(createLinkObjectAction)); + + OpaqueBehavior opaqueBehavior = UML.createOpaqueBehavior(); + assertValid(opaqueBehavior); + abstraction.getSuppliers().add(opaqueBehavior); + assertSuperset(abstraction.getTargets().contains(opaqueBehavior)); + + LiteralUnlimitedNatural literalUnlimitedNatural = UML + .createLiteralUnlimitedNatural(); + assertValid(literalUnlimitedNatural); + abstraction.getSuppliers().add(literalUnlimitedNatural); + assertSuperset( + abstraction.getTargets().contains(literalUnlimitedNatural)); + + SendSignalAction sendSignalAction = UML.createSendSignalAction(); + assertValid(sendSignalAction); + abstraction.getSuppliers().add(sendSignalAction); + assertSuperset(abstraction.getTargets().contains(sendSignalAction)); + + ReadLinkAction readLinkAction = UML.createReadLinkAction(); + assertValid(readLinkAction); + abstraction.getSuppliers().add(readLinkAction); + assertSuperset(abstraction.getTargets().contains(readLinkAction)); + + Operation operation = UML.createOperation(); + assertValid(operation); + abstraction.getSuppliers().add(operation); + assertSuperset(abstraction.getTargets().contains(operation)); + + ClearAssociationAction clearAssociationAction = UML + .createClearAssociationAction(); + assertValid(clearAssociationAction); + abstraction.getSuppliers().add(clearAssociationAction); + assertSuperset( + abstraction.getTargets().contains(clearAssociationAction)); + + Model model = UML.createModel(); + assertValid(model); + abstraction.getSuppliers().add(model); + assertSuperset(abstraction.getTargets().contains(model)); + + Parameter parameter = UML.createParameter(); + assertValid(parameter); + abstraction.getSuppliers().add(parameter); + assertSuperset(abstraction.getTargets().contains(parameter)); + + InstanceValue instanceValue = UML.createInstanceValue(); + assertValid(instanceValue); + abstraction.getSuppliers().add(instanceValue); + assertSuperset(abstraction.getTargets().contains(instanceValue)); + + Trigger trigger = UML.createTrigger(); + assertValid(trigger); + abstraction.getSuppliers().add(trigger); + assertSuperset(abstraction.getTargets().contains(trigger)); + + InteractionConstraint interactionConstraint = UML + .createInteractionConstraint(); + assertValid(interactionConstraint); + abstraction.getSuppliers().add(interactionConstraint); + assertSuperset( + abstraction.getTargets().contains(interactionConstraint)); + + AssociationClass associationClass = UML.createAssociationClass(); + assertValid(associationClass); + abstraction.getSuppliers().add(associationClass); + assertSuperset(abstraction.getTargets().contains(associationClass)); + + InteractionUse interactionUse = UML.createInteractionUse(); + assertValid(interactionUse); + abstraction.getSuppliers().add(interactionUse); + assertSuperset(abstraction.getTargets().contains(interactionUse)); + + ClearStructuralFeatureAction clearStructuralFeatureAction = UML + .createClearStructuralFeatureAction(); + assertValid(clearStructuralFeatureAction); + abstraction.getSuppliers().add(clearStructuralFeatureAction); + assertSuperset( + abstraction.getTargets().contains(clearStructuralFeatureAction)); + + Interval interval = UML.createInterval(); + assertValid(interval); + abstraction.getSuppliers().add(interval); + assertSuperset(abstraction.getTargets().contains(interval)); + + StructuredActivityNode structuredActivityNode = UML + .createStructuredActivityNode(); + assertValid(structuredActivityNode); + abstraction.getSuppliers().add(structuredActivityNode); + assertSuperset( + abstraction.getTargets().contains(structuredActivityNode)); + + LiteralString literalString = UML.createLiteralString(); + assertValid(literalString); + abstraction.getSuppliers().add(literalString); + assertSuperset(abstraction.getTargets().contains(literalString)); + + ValuePin valuePin = UML.createValuePin(); + assertValid(valuePin); + abstraction.getSuppliers().add(valuePin); + assertSuperset(abstraction.getTargets().contains(valuePin)); + + InterfaceRealization interfaceRealization = UML + .createInterfaceRealization(); + assertValid(interfaceRealization); + abstraction.getSuppliers().add(interfaceRealization); + assertSuperset(abstraction.getTargets().contains(interfaceRealization)); + + ForkNode forkNode = UML.createForkNode(); + assertValid(forkNode); + abstraction.getSuppliers().add(forkNode); + assertSuperset(abstraction.getTargets().contains(forkNode)); + + DecisionNode decisionNode = UML.createDecisionNode(); + assertValid(decisionNode); + abstraction.getSuppliers().add(decisionNode); + assertSuperset(abstraction.getTargets().contains(decisionNode)); + + Actor actor = UML.createActor(); + assertValid(actor); + abstraction.getSuppliers().add(actor); + assertSuperset(abstraction.getTargets().contains(actor)); + + TimeConstraint timeConstraint = UML.createTimeConstraint(); + assertValid(timeConstraint); + abstraction.getSuppliers().add(timeConstraint); + assertSuperset(abstraction.getTargets().contains(timeConstraint)); + + Reception reception = UML.createReception(); + assertValid(reception); + abstraction.getSuppliers().add(reception); + assertSuperset(abstraction.getTargets().contains(reception)); + + Pseudostate pseudostate = UML.createPseudostate(); + assertValid(pseudostate); + abstraction.getSuppliers().add(pseudostate); + assertSuperset(abstraction.getTargets().contains(pseudostate)); + + DurationInterval durationInterval = UML.createDurationInterval(); + assertValid(durationInterval); + abstraction.getSuppliers().add(durationInterval); + assertSuperset(abstraction.getTargets().contains(durationInterval)); + + Deployment deployment = UML.createDeployment(); + assertValid(deployment); + abstraction.getSuppliers().add(deployment); + assertSuperset(abstraction.getTargets().contains(deployment)); + + ExtensionEnd extensionEnd = UML.createExtensionEnd(); + assertValid(extensionEnd); + abstraction.getSuppliers().add(extensionEnd); + assertSuperset(abstraction.getTargets().contains(extensionEnd)); + + ConsiderIgnoreFragment considerIgnoreFragment = UML + .createConsiderIgnoreFragment(); + assertValid(considerIgnoreFragment); + abstraction.getSuppliers().add(considerIgnoreFragment); + assertSuperset( + abstraction.getTargets().contains(considerIgnoreFragment)); + + ConditionalNode conditionalNode = UML.createConditionalNode(); + assertValid(conditionalNode); + abstraction.getSuppliers().add(conditionalNode); + assertSuperset(abstraction.getTargets().contains(conditionalNode)); + + ReadExtentAction readExtentAction = UML.createReadExtentAction(); + assertValid(readExtentAction); + abstraction.getSuppliers().add(readExtentAction); + assertSuperset(abstraction.getTargets().contains(readExtentAction)); + + ActionInputPin actionInputPin = UML.createActionInputPin(); + assertValid(actionInputPin); + abstraction.getSuppliers().add(actionInputPin); + assertSuperset(abstraction.getTargets().contains(actionInputPin)); + + Artifact artifact = UML.createArtifact(); + assertValid(artifact); + abstraction.getSuppliers().add(artifact); + assertSuperset(abstraction.getTargets().contains(artifact)); + + InformationFlow informationFlow = UML.createInformationFlow(); + assertValid(informationFlow); + abstraction.getSuppliers().add(informationFlow); + assertSuperset(abstraction.getTargets().contains(informationFlow)); + + ClearVariableAction clearVariableAction = UML + .createClearVariableAction(); + assertValid(clearVariableAction); + abstraction.getSuppliers().add(clearVariableAction); + assertSuperset(abstraction.getTargets().contains(clearVariableAction)); + + CreateLinkAction createLinkAction = UML.createCreateLinkAction(); + assertValid(createLinkAction); + abstraction.getSuppliers().add(createLinkAction); + assertSuperset(abstraction.getTargets().contains(createLinkAction)); + + SignalEvent signalEvent = UML.createSignalEvent(); + assertValid(signalEvent); + abstraction.getSuppliers().add(signalEvent); + assertSuperset(abstraction.getTargets().contains(signalEvent)); + + ConnectionPointReference connectionPointReference = UML + .createConnectionPointReference(); + assertValid(connectionPointReference); + abstraction.getSuppliers().add(connectionPointReference); + assertSuperset( + abstraction.getTargets().contains(connectionPointReference)); + + ReclassifyObjectAction reclassifyObjectAction = UML + .createReclassifyObjectAction(); + assertValid(reclassifyObjectAction); + abstraction.getSuppliers().add(reclassifyObjectAction); + assertSuperset( + abstraction.getTargets().contains(reclassifyObjectAction)); + + Usage usage = UML.createUsage(); + assertValid(usage); + abstraction.getSuppliers().add(usage); + assertSuperset(abstraction.getTargets().contains(usage)); + + DataStoreNode dataStoreNode = UML.createDataStoreNode(); + assertValid(dataStoreNode); + abstraction.getSuppliers().add(dataStoreNode); + assertSuperset(abstraction.getTargets().contains(dataStoreNode)); + + ExecutionEnvironment executionEnvironment = UML + .createExecutionEnvironment(); + assertValid(executionEnvironment); + abstraction.getSuppliers().add(executionEnvironment); + assertSuperset(abstraction.getTargets().contains(executionEnvironment)); + + SendObjectAction sendObjectAction = UML.createSendObjectAction(); + assertValid(sendObjectAction); + abstraction.getSuppliers().add(sendObjectAction); + assertSuperset(abstraction.getTargets().contains(sendObjectAction)); + + ControlFlow controlFlow = UML.createControlFlow(); + assertValid(controlFlow); + abstraction.getSuppliers().add(controlFlow); + assertSuperset(abstraction.getTargets().contains(controlFlow)); + + DeploymentSpecification deploymentSpecification = UML + .createDeploymentSpecification(); + assertValid(deploymentSpecification); + abstraction.getSuppliers().add(deploymentSpecification); + assertSuperset( + abstraction.getTargets().contains(deploymentSpecification)); + + PartDecomposition partDecomposition = UML.createPartDecomposition(); + assertValid(partDecomposition); + abstraction.getSuppliers().add(partDecomposition); + assertSuperset(abstraction.getTargets().contains(partDecomposition)); + + DestroyLinkAction destroyLinkAction = UML.createDestroyLinkAction(); + assertValid(destroyLinkAction); + abstraction.getSuppliers().add(destroyLinkAction); + assertSuperset(abstraction.getTargets().contains(destroyLinkAction)); + + Realization realization = UML.createRealization(); + assertValid(realization); + abstraction.getSuppliers().add(realization); + assertSuperset(abstraction.getTargets().contains(realization)); + + ExpansionNode expansionNode = UML.createExpansionNode(); + assertValid(expansionNode); + abstraction.getSuppliers().add(expansionNode); + assertSuperset(abstraction.getTargets().contains(expansionNode)); + + TestIdentityAction testIdentityAction = UML.createTestIdentityAction(); + assertValid(testIdentityAction); + abstraction.getSuppliers().add(testIdentityAction); + assertSuperset(abstraction.getTargets().contains(testIdentityAction)); + + Association association = UML.createAssociation(); + assertValid(association); + abstraction.getSuppliers().add(association); + assertSuperset(abstraction.getTargets().contains(association)); + + TimeInterval timeInterval = UML.createTimeInterval(); + assertValid(timeInterval); + abstraction.getSuppliers().add(timeInterval); + assertSuperset(abstraction.getTargets().contains(timeInterval)); + + DataType dataType = UML.createDataType(); + assertValid(dataType); + abstraction.getSuppliers().add(dataType); + assertSuperset(abstraction.getTargets().contains(dataType)); + + OutputPin outputPin = UML.createOutputPin(); + assertValid(outputPin); + abstraction.getSuppliers().add(outputPin); + assertSuperset(abstraction.getTargets().contains(outputPin)); + + Substitution substitution = UML.createSubstitution(); + assertValid(substitution); + abstraction.getSuppliers().add(substitution); + assertSuperset(abstraction.getTargets().contains(substitution)); + + Include include = UML.createInclude(); + assertValid(include); + abstraction.getSuppliers().add(include); + assertSuperset(abstraction.getTargets().contains(include)); + + Extend extend = UML.createExtend(); + assertValid(extend); + abstraction.getSuppliers().add(extend); + assertSuperset(abstraction.getTargets().contains(extend)); + + BroadcastSignalAction broadcastSignalAction = UML + .createBroadcastSignalAction(); + assertValid(broadcastSignalAction); + abstraction.getSuppliers().add(broadcastSignalAction); + assertSuperset( + abstraction.getTargets().contains(broadcastSignalAction)); + + LiteralBoolean literalBoolean = UML.createLiteralBoolean(); + assertValid(literalBoolean); + abstraction.getSuppliers().add(literalBoolean); + assertSuperset(abstraction.getTargets().contains(literalBoolean)); + + FinalState finalState = UML.createFinalState(); + assertValid(finalState); + abstraction.getSuppliers().add(finalState); + assertSuperset(abstraction.getTargets().contains(finalState)); + + RaiseExceptionAction raiseExceptionAction = UML + .createRaiseExceptionAction(); + assertValid(raiseExceptionAction); + abstraction.getSuppliers().add(raiseExceptionAction); + assertSuperset(abstraction.getTargets().contains(raiseExceptionAction)); + + DurationConstraint durationConstraint = UML.createDurationConstraint(); + assertValid(durationConstraint); + abstraction.getSuppliers().add(durationConstraint); + assertSuperset(abstraction.getTargets().contains(durationConstraint)); + + ActivityFinalNode activityFinalNode = UML.createActivityFinalNode(); + assertValid(activityFinalNode); + abstraction.getSuppliers().add(activityFinalNode); + assertSuperset(abstraction.getTargets().contains(activityFinalNode)); + + LiteralNull literalNull = UML.createLiteralNull(); + assertValid(literalNull); + abstraction.getSuppliers().add(literalNull); + assertSuperset(abstraction.getTargets().contains(literalNull)); + + CallOperationAction callOperationAction = UML + .createCallOperationAction(); + assertValid(callOperationAction); + abstraction.getSuppliers().add(callOperationAction); + assertSuperset(abstraction.getTargets().contains(callOperationAction)); + + ProtocolStateMachine protocolStateMachine = UML + .createProtocolStateMachine(); + assertValid(protocolStateMachine); + abstraction.getSuppliers().add(protocolStateMachine); + assertSuperset(abstraction.getTargets().contains(protocolStateMachine)); + + LoopNode loopNode = UML.createLoopNode(); + assertValid(loopNode); + abstraction.getSuppliers().add(loopNode); + assertSuperset(abstraction.getTargets().contains(loopNode)); + + ParameterSet parameterSet = UML.createParameterSet(); + assertValid(parameterSet); + abstraction.getSuppliers().add(parameterSet); + assertSuperset(abstraction.getTargets().contains(parameterSet)); + + ValueSpecificationAction valueSpecificationAction = UML + .createValueSpecificationAction(); + assertValid(valueSpecificationAction); + abstraction.getSuppliers().add(valueSpecificationAction); + assertSuperset( + abstraction.getTargets().contains(valueSpecificationAction)); + + Node node = UML.createNode(); + assertValid(node); + abstraction.getSuppliers().add(node); + assertSuperset(abstraction.getTargets().contains(node)); + + SequenceNode sequenceNode = UML.createSequenceNode(); + assertValid(sequenceNode); + abstraction.getSuppliers().add(sequenceNode); + assertSuperset(abstraction.getTargets().contains(sequenceNode)); + + Constraint constraint = UML.createConstraint(); + assertValid(constraint); + abstraction.getSuppliers().add(constraint); + assertSuperset(abstraction.getTargets().contains(constraint)); + + DestroyObjectAction destroyObjectAction = UML + .createDestroyObjectAction(); + assertValid(destroyObjectAction); + abstraction.getSuppliers().add(destroyObjectAction); + assertSuperset(abstraction.getTargets().contains(destroyObjectAction)); + + StateMachine stateMachine = UML.createStateMachine(); + assertValid(stateMachine); + abstraction.getSuppliers().add(stateMachine); + assertSuperset(abstraction.getTargets().contains(stateMachine)); + + EnumerationLiteral enumerationLiteral = UML.createEnumerationLiteral(); + assertValid(enumerationLiteral); + abstraction.getSuppliers().add(enumerationLiteral); + assertSuperset(abstraction.getTargets().contains(enumerationLiteral)); + + ActionExecutionSpecification actionExecutionSpecification = UML + .createActionExecutionSpecification(); + assertValid(actionExecutionSpecification); + abstraction.getSuppliers().add(actionExecutionSpecification); + assertSuperset( + abstraction.getTargets().contains(actionExecutionSpecification)); + + FunctionBehavior functionBehavior = UML.createFunctionBehavior(); + assertValid(functionBehavior); + abstraction.getSuppliers().add(functionBehavior); + assertSuperset(abstraction.getTargets().contains(functionBehavior)); + + Interface interface_ = UML.createInterface(); + assertValid(interface_); + abstraction.getSuppliers().add(interface_); + assertSuperset(abstraction.getTargets().contains(interface_)); + + InstanceSpecification instanceSpecification = UML + .createInstanceSpecification(); + assertValid(instanceSpecification); + abstraction.getSuppliers().add(instanceSpecification); + assertSuperset( + abstraction.getTargets().contains(instanceSpecification)); + + StartClassifierBehaviorAction startClassifierBehaviorAction = UML + .createStartClassifierBehaviorAction(); + assertValid(startClassifierBehaviorAction); + abstraction.getSuppliers().add(startClassifierBehaviorAction); + assertSuperset( + abstraction.getTargets().contains(startClassifierBehaviorAction)); + + Port port = UML.createPort(); + assertValid(port); + abstraction.getSuppliers().add(port); + assertSuperset(abstraction.getTargets().contains(port)); + + RemoveVariableValueAction removeVariableValueAction = UML + .createRemoveVariableValueAction(); + assertValid(removeVariableValueAction); + abstraction.getSuppliers().add(removeVariableValueAction); + assertSuperset( + abstraction.getTargets().contains(removeVariableValueAction)); + + InformationItem informationItem = UML.createInformationItem(); + assertValid(informationItem); + abstraction.getSuppliers().add(informationItem); + assertSuperset(abstraction.getTargets().contains(informationItem)); + + LiteralReal literalReal = UML.createLiteralReal(); + assertValid(literalReal); + abstraction.getSuppliers().add(literalReal); + assertSuperset(abstraction.getTargets().contains(literalReal)); + + RedefinableTemplateSignature redefinableTemplateSignature = UML + .createRedefinableTemplateSignature(); + assertValid(redefinableTemplateSignature); + abstraction.getSuppliers().add(redefinableTemplateSignature); + assertSuperset( + abstraction.getTargets().contains(redefinableTemplateSignature)); + + ExecutionOccurrenceSpecification executionOccurrenceSpecification = UML + .createExecutionOccurrenceSpecification(); + assertValid(executionOccurrenceSpecification); + abstraction.getSuppliers().add(executionOccurrenceSpecification); + assertSuperset(abstraction.getTargets() + .contains(executionOccurrenceSpecification)); + + Duration duration = UML.createDuration(); + assertValid(duration); + abstraction.getSuppliers().add(duration); + assertSuperset(abstraction.getTargets().contains(duration)); + + org.eclipse.uml2.uml.Package package_ = UML.createPackage(); + assertValid(package_); + abstraction.getSuppliers().add(package_); + assertSuperset(abstraction.getTargets().contains(package_)); + + Variable variable = UML.createVariable(); + assertValid(variable); + abstraction.getSuppliers().add(variable); + assertSuperset(abstraction.getTargets().contains(variable)); + + DestructionOccurrenceSpecification destructionOccurrenceSpecification = UML + .createDestructionOccurrenceSpecification(); + assertValid(destructionOccurrenceSpecification); + abstraction.getSuppliers().add(destructionOccurrenceSpecification); + assertSuperset(abstraction.getTargets() + .contains(destructionOccurrenceSpecification)); + + Lifeline lifeline = UML.createLifeline(); + assertValid(lifeline); + abstraction.getSuppliers().add(lifeline); + assertSuperset(abstraction.getTargets().contains(lifeline)); + + TimeObservation timeObservation = UML.createTimeObservation(); + assertValid(timeObservation); + abstraction.getSuppliers().add(timeObservation); + assertSuperset(abstraction.getTargets().contains(timeObservation)); + + ReplyAction replyAction = UML.createReplyAction(); + assertValid(replyAction); + abstraction.getSuppliers().add(replyAction); + assertSuperset(abstraction.getTargets().contains(replyAction)); + + Gate gate = UML.createGate(); + assertValid(gate); + abstraction.getSuppliers().add(gate); + assertSuperset(abstraction.getTargets().contains(gate)); + + Property property = UML.createProperty(); + assertValid(property); + abstraction.getSuppliers().add(property); + assertSuperset(abstraction.getTargets().contains(property)); + + TimeExpression timeExpression = UML.createTimeExpression(); + assertValid(timeExpression); + abstraction.getSuppliers().add(timeExpression); + assertSuperset(abstraction.getTargets().contains(timeExpression)); + + Device device = UML.createDevice(); + assertValid(device); + abstraction.getSuppliers().add(device); + assertSuperset(abstraction.getTargets().contains(device)); + + FlowFinalNode flowFinalNode = UML.createFlowFinalNode(); + assertValid(flowFinalNode); + abstraction.getSuppliers().add(flowFinalNode); + assertSuperset(abstraction.getTargets().contains(flowFinalNode)); + + ExpansionRegion expansionRegion = UML.createExpansionRegion(); + assertValid(expansionRegion); + abstraction.getSuppliers().add(expansionRegion); + assertSuperset(abstraction.getTargets().contains(expansionRegion)); + + Abstraction abstraction2 = UML.createAbstraction(); + assertValid(abstraction2); + abstraction.getSuppliers().add(abstraction2); + assertSuperset(abstraction.getTargets().contains(abstraction2)); + + StartObjectBehaviorAction startObjectBehaviorAction = UML + .createStartObjectBehaviorAction(); + assertValid(startObjectBehaviorAction); + abstraction.getSuppliers().add(startObjectBehaviorAction); + assertSuperset( + abstraction.getTargets().contains(startObjectBehaviorAction)); + + Enumeration enumeration = UML.createEnumeration(); + assertValid(enumeration); + abstraction.getSuppliers().add(enumeration); + assertSuperset(abstraction.getTargets().contains(enumeration)); + + PrimitiveType primitiveType = UML.createPrimitiveType(); + assertValid(primitiveType); + abstraction.getSuppliers().add(primitiveType); + assertSuperset(abstraction.getTargets().contains(primitiveType)); + + Profile profile = UML.createProfile(); + assertValid(profile); + abstraction.getSuppliers().add(profile); + assertSuperset(abstraction.getTargets().contains(profile)); + + Message message = UML.createMessage(); + assertValid(message); + abstraction.getSuppliers().add(message); + assertSuperset(abstraction.getTargets().contains(message)); + + GeneralizationSet generalizationSet = UML.createGeneralizationSet(); + assertValid(generalizationSet); + abstraction.getSuppliers().add(generalizationSet); + assertSuperset(abstraction.getTargets().contains(generalizationSet)); + + Continuation continuation = UML.createContinuation(); + assertValid(continuation); + abstraction.getSuppliers().add(continuation); + assertSuperset(abstraction.getTargets().contains(continuation)); + + Signal signal = UML.createSignal(); + assertValid(signal); + abstraction.getSuppliers().add(signal); + assertSuperset(abstraction.getTargets().contains(signal)); + + CallBehaviorAction callBehaviorAction = UML.createCallBehaviorAction(); + assertValid(callBehaviorAction); + abstraction.getSuppliers().add(callBehaviorAction); + assertSuperset(abstraction.getTargets().contains(callBehaviorAction)); + + ObjectFlow objectFlow = UML.createObjectFlow(); + assertValid(objectFlow); + abstraction.getSuppliers().add(objectFlow); + assertSuperset(abstraction.getTargets().contains(objectFlow)); + + StateInvariant stateInvariant = UML.createStateInvariant(); + assertValid(stateInvariant); + abstraction.getSuppliers().add(stateInvariant); + assertSuperset(abstraction.getTargets().contains(stateInvariant)); + + ReadIsClassifiedObjectAction readIsClassifiedObjectAction = UML + .createReadIsClassifiedObjectAction(); + assertValid(readIsClassifiedObjectAction); + abstraction.getSuppliers().add(readIsClassifiedObjectAction); + assertSuperset( + abstraction.getTargets().contains(readIsClassifiedObjectAction)); + + ActivityParameterNode activityParameterNode = UML + .createActivityParameterNode(); + assertValid(activityParameterNode); + abstraction.getSuppliers().add(activityParameterNode); + assertSuperset( + abstraction.getTargets().contains(activityParameterNode)); + + AddStructuralFeatureValueAction addStructuralFeatureValueAction = UML + .createAddStructuralFeatureValueAction(); + assertValid(addStructuralFeatureValueAction); + abstraction.getSuppliers().add(addStructuralFeatureValueAction); + assertSuperset( + abstraction.getTargets().contains(addStructuralFeatureValueAction)); + + ReadVariableAction readVariableAction = UML.createReadVariableAction(); + assertValid(readVariableAction); + abstraction.getSuppliers().add(readVariableAction); + assertSuperset(abstraction.getTargets().contains(readVariableAction)); + + InterruptibleActivityRegion interruptibleActivityRegion = UML + .createInterruptibleActivityRegion(); + assertValid(interruptibleActivityRegion); + abstraction.getSuppliers().add(interruptibleActivityRegion); + assertSuperset( + abstraction.getTargets().contains(interruptibleActivityRegion)); + + RemoveStructuralFeatureValueAction removeStructuralFeatureValueAction = UML + .createRemoveStructuralFeatureValueAction(); + assertValid(removeStructuralFeatureValueAction); + abstraction.getSuppliers().add(removeStructuralFeatureValueAction); + assertSuperset(abstraction.getTargets() + .contains(removeStructuralFeatureValueAction)); + + OpaqueExpression opaqueExpression = UML.createOpaqueExpression(); + assertValid(opaqueExpression); + abstraction.getSuppliers().add(opaqueExpression); + assertSuperset(abstraction.getTargets().contains(opaqueExpression)); + + TimeEvent timeEvent = UML.createTimeEvent(); + assertValid(timeEvent); + abstraction.getSuppliers().add(timeEvent); + assertSuperset(abstraction.getTargets().contains(timeEvent)); + + GeneralOrdering generalOrdering = UML.createGeneralOrdering(); + assertValid(generalOrdering); + abstraction.getSuppliers().add(generalOrdering); + assertSuperset(abstraction.getTargets().contains(generalOrdering)); + + Region region = UML.createRegion(); + assertValid(region); + abstraction.getSuppliers().add(region); + assertSuperset(abstraction.getTargets().contains(region)); + + Transition transition = UML.createTransition(); + assertValid(transition); + abstraction.getSuppliers().add(transition); + assertSuperset(abstraction.getTargets().contains(transition)); + + AnyReceiveEvent anyReceiveEvent = UML.createAnyReceiveEvent(); + assertValid(anyReceiveEvent); + abstraction.getSuppliers().add(anyReceiveEvent); + assertSuperset(abstraction.getTargets().contains(anyReceiveEvent)); + + MessageOccurrenceSpecification messageOccurrenceSpecification = UML + .createMessageOccurrenceSpecification(); + assertValid(messageOccurrenceSpecification); + abstraction.getSuppliers().add(messageOccurrenceSpecification); + assertSuperset( + abstraction.getTargets().contains(messageOccurrenceSpecification)); + + LiteralInteger literalInteger = UML.createLiteralInteger(); + assertValid(literalInteger); + abstraction.getSuppliers().add(literalInteger); + assertSuperset(abstraction.getTargets().contains(literalInteger)); + + ReduceAction reduceAction = UML.createReduceAction(); + assertValid(reduceAction); + abstraction.getSuppliers().add(reduceAction); + assertSuperset(abstraction.getTargets().contains(reduceAction)); + + AcceptEventAction acceptEventAction = UML.createAcceptEventAction(); + assertValid(acceptEventAction); + abstraction.getSuppliers().add(acceptEventAction); + assertSuperset(abstraction.getTargets().contains(acceptEventAction)); + + InitialNode initialNode = UML.createInitialNode(); + assertValid(initialNode); + abstraction.getSuppliers().add(initialNode); + assertSuperset(abstraction.getTargets().contains(initialNode)); + + CentralBufferNode centralBufferNode = UML.createCentralBufferNode(); + assertValid(centralBufferNode); + abstraction.getSuppliers().add(centralBufferNode); + assertSuperset(abstraction.getTargets().contains(centralBufferNode)); + + CombinedFragment combinedFragment = UML.createCombinedFragment(); + assertValid(combinedFragment); + abstraction.getSuppliers().add(combinedFragment); + assertSuperset(abstraction.getTargets().contains(combinedFragment)); + + IntervalConstraint intervalConstraint = UML.createIntervalConstraint(); + assertValid(intervalConstraint); + abstraction.getSuppliers().add(intervalConstraint); + assertSuperset(abstraction.getTargets().contains(intervalConstraint)); + + Extension extension = UML.createExtension(); + assertValid(extension); + abstraction.getSuppliers().add(extension); + assertSuperset(abstraction.getTargets().contains(extension)); + + OccurrenceSpecification occurrenceSpecification = UML + .createOccurrenceSpecification(); + assertValid(occurrenceSpecification); + abstraction.getSuppliers().add(occurrenceSpecification); + assertSuperset( + abstraction.getTargets().contains(occurrenceSpecification)); + + ExtensionPoint extensionPoint = UML.createExtensionPoint(); + assertValid(extensionPoint); + abstraction.getSuppliers().add(extensionPoint); + assertSuperset(abstraction.getTargets().contains(extensionPoint)); + + Dependency dependency = UML.createDependency(); + assertValid(dependency); + abstraction.getSuppliers().add(dependency); + assertSuperset(abstraction.getTargets().contains(dependency)); + + Connector connector = UML.createConnector(); + assertValid(connector); + abstraction.getSuppliers().add(connector); + assertSuperset(abstraction.getTargets().contains(connector)); + + Expression expression = UML.createExpression(); + assertValid(expression); + abstraction.getSuppliers().add(expression); + assertSuperset(abstraction.getTargets().contains(expression)); + + ComponentRealization componentRealization = UML + .createComponentRealization(); + assertValid(componentRealization); + abstraction.getSuppliers().add(componentRealization); + assertSuperset(abstraction.getTargets().contains(componentRealization)); + + org.eclipse.uml2.uml.Class class_ = UML.createClass(); + assertValid(class_); + abstraction.getSuppliers().add(class_); + assertSuperset(abstraction.getTargets().contains(class_)); + + State state = UML.createState(); + assertValid(state); + abstraction.getSuppliers().add(state); + assertSuperset(abstraction.getTargets().contains(state)); + + ProtocolTransition protocolTransition = UML.createProtocolTransition(); + assertValid(protocolTransition); + abstraction.getSuppliers().add(protocolTransition); + assertSuperset(abstraction.getTargets().contains(protocolTransition)); + + BehaviorExecutionSpecification behaviorExecutionSpecification = UML + .createBehaviorExecutionSpecification(); + assertValid(behaviorExecutionSpecification); + abstraction.getSuppliers().add(behaviorExecutionSpecification); + assertSuperset( + abstraction.getTargets().contains(behaviorExecutionSpecification)); + + CollaborationUse collaborationUse = UML.createCollaborationUse(); + assertValid(collaborationUse); + abstraction.getSuppliers().add(collaborationUse); + assertSuperset(abstraction.getTargets().contains(collaborationUse)); + + InteractionOperand interactionOperand = UML.createInteractionOperand(); + assertValid(interactionOperand); + abstraction.getSuppliers().add(interactionOperand); + assertSuperset(abstraction.getTargets().contains(interactionOperand)); + + AcceptCallAction acceptCallAction = UML.createAcceptCallAction(); + assertValid(acceptCallAction); + abstraction.getSuppliers().add(acceptCallAction); + assertSuperset(abstraction.getTargets().contains(acceptCallAction)); + + AddVariableValueAction addVariableValueAction = UML + .createAddVariableValueAction(); + assertValid(addVariableValueAction); + abstraction.getSuppliers().add(addVariableValueAction); + assertSuperset( + abstraction.getTargets().contains(addVariableValueAction)); + + ReadLinkObjectEndAction readLinkObjectEndAction = UML + .createReadLinkObjectEndAction(); + assertValid(readLinkObjectEndAction); + abstraction.getSuppliers().add(readLinkObjectEndAction); + assertSuperset( + abstraction.getTargets().contains(readLinkObjectEndAction)); + + UseCase useCase = UML.createUseCase(); + assertValid(useCase); + abstraction.getSuppliers().add(useCase); + assertSuperset(abstraction.getTargets().contains(useCase)); + + UnmarshallAction unmarshallAction = UML.createUnmarshallAction(); + assertValid(unmarshallAction); + abstraction.getSuppliers().add(unmarshallAction); + assertSuperset(abstraction.getTargets().contains(unmarshallAction)); + + OpaqueAction opaqueAction = UML.createOpaqueAction(); + assertValid(opaqueAction); + abstraction.getSuppliers().add(opaqueAction); + assertSuperset(abstraction.getTargets().contains(opaqueAction)); + + StringExpression stringExpression = UML.createStringExpression(); + assertValid(stringExpression); + abstraction.getSuppliers().add(stringExpression); + assertSuperset(abstraction.getTargets().contains(stringExpression)); + + MergeNode mergeNode = UML.createMergeNode(); + assertValid(mergeNode); + abstraction.getSuppliers().add(mergeNode); + assertSuperset(abstraction.getTargets().contains(mergeNode)); + + ChangeEvent changeEvent = UML.createChangeEvent(); + assertValid(changeEvent); + abstraction.getSuppliers().add(changeEvent); + assertSuperset(abstraction.getTargets().contains(changeEvent)); + + CreateObjectAction createObjectAction = UML.createCreateObjectAction(); + assertValid(createObjectAction); + abstraction.getSuppliers().add(createObjectAction); + assertSuperset(abstraction.getTargets().contains(createObjectAction)); + + Stereotype stereotype = UML.createStereotype(); + assertValid(stereotype); + abstraction.getSuppliers().add(stereotype); + assertSuperset(abstraction.getTargets().contains(stereotype)); + + ReadStructuralFeatureAction readStructuralFeatureAction = UML + .createReadStructuralFeatureAction(); + assertValid(readStructuralFeatureAction); + abstraction.getSuppliers().add(readStructuralFeatureAction); + assertSuperset( + abstraction.getTargets().contains(readStructuralFeatureAction)); + + Collaboration collaboration = UML.createCollaboration(); + assertValid(collaboration); + abstraction.getSuppliers().add(collaboration); + assertSuperset(abstraction.getTargets().contains(collaboration)); + } + + public void testMapping() { + Abstraction abstraction = UML.createAbstraction(); + assertValid(abstraction); + + OpaqueExpression opaqueExpression = UML.createOpaqueExpression(); + assertValid(opaqueExpression); + abstraction.setMapping(opaqueExpression); + assertSuperset( + abstraction.getOwnedElements().contains(opaqueExpression)); + } + +} |