| /* |
| * 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.Classifier; |
| import org.eclipse.uml2.uml.Comment; |
| import org.eclipse.uml2.uml.ConnectionPointReference; |
| import org.eclipse.uml2.uml.Constraint; |
| import org.eclipse.uml2.uml.Dependency; |
| import org.eclipse.uml2.uml.DurationConstraint; |
| import org.eclipse.uml2.uml.Element; |
| import org.eclipse.uml2.uml.ElementImport; |
| import org.eclipse.uml2.uml.FinalState; |
| import org.eclipse.uml2.uml.InteractionConstraint; |
| import org.eclipse.uml2.uml.IntervalConstraint; |
| import org.eclipse.uml2.uml.NamedElement; |
| import org.eclipse.uml2.uml.PackageImport; |
| import org.eclipse.uml2.uml.PackageableElement; |
| import org.eclipse.uml2.uml.ProtocolStateMachine; |
| import org.eclipse.uml2.uml.ProtocolTransition; |
| import org.eclipse.uml2.uml.Pseudostate; |
| import org.eclipse.uml2.uml.RedefinableElement; |
| import org.eclipse.uml2.uml.Region; |
| import org.eclipse.uml2.uml.State; |
| import org.eclipse.uml2.uml.StateMachine; |
| import org.eclipse.uml2.uml.StringExpression; |
| import org.eclipse.uml2.uml.TimeConstraint; |
| import org.eclipse.uml2.uml.Transition; |
| import org.eclipse.uml2.uml.Trigger; |
| |
| /** |
| * @author Eike Stepper |
| */ |
| public class TransitionTest |
| extends _Abstract_Compliance_Test_ { |
| |
| public void testEAnnotations() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| EAnnotation eAnnotation = ECORE.createEAnnotation(); |
| assertValid(eAnnotation); |
| transition.getEAnnotations().add(eAnnotation); |
| } |
| |
| public void testOwnedComment() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| Comment comment = UML.createComment(); |
| assertValid(comment); |
| transition.getOwnedComments().add(comment); |
| assertSuperset(transition.getOwnedElements().contains(comment)); |
| } |
| |
| public void testOwnedElement() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| EList<Element> elements = transition.getOwnedElements(); |
| EList<Element> elements2 = transition.getOwnedElements(); |
| assertSame(elements, elements2); |
| } |
| |
| public void testClientDependency() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| EList<Dependency> dependencys = transition.getClientDependencies(); |
| EList<Dependency> dependencys2 = transition.getClientDependencies(); |
| assertSame(dependencys, dependencys2); |
| } |
| |
| public void testNameExpression() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| StringExpression stringExpression = UML.createStringExpression(); |
| assertValid(stringExpression); |
| transition.setNameExpression(stringExpression); |
| assertSuperset( |
| transition.getOwnedElements().contains(stringExpression)); |
| } |
| |
| public void testOwnedRule() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| IntervalConstraint intervalConstraint = UML.createIntervalConstraint(); |
| assertValid(intervalConstraint); |
| transition.getOwnedRules().add(intervalConstraint); |
| assertSuperset( |
| transition.getOwnedMembers().contains(intervalConstraint)); |
| |
| TimeConstraint timeConstraint = UML.createTimeConstraint(); |
| assertValid(timeConstraint); |
| transition.getOwnedRules().add(timeConstraint); |
| assertSuperset(transition.getOwnedMembers().contains(timeConstraint)); |
| |
| InteractionConstraint interactionConstraint = UML |
| .createInteractionConstraint(); |
| assertValid(interactionConstraint); |
| transition.getOwnedRules().add(interactionConstraint); |
| assertSuperset( |
| transition.getOwnedMembers().contains(interactionConstraint)); |
| |
| Constraint constraint = UML.createConstraint(); |
| assertValid(constraint); |
| transition.getOwnedRules().add(constraint); |
| assertSuperset(transition.getOwnedMembers().contains(constraint)); |
| |
| DurationConstraint durationConstraint = UML.createDurationConstraint(); |
| assertValid(durationConstraint); |
| transition.getOwnedRules().add(durationConstraint); |
| assertSuperset( |
| transition.getOwnedMembers().contains(durationConstraint)); |
| } |
| |
| public void testElementImport() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| ElementImport elementImport = UML.createElementImport(); |
| assertValid(elementImport); |
| transition.getElementImports().add(elementImport); |
| assertSuperset(transition.getOwnedElements().contains(elementImport)); |
| } |
| |
| public void testPackageImport() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| PackageImport packageImport = UML.createPackageImport(); |
| assertValid(packageImport); |
| transition.getPackageImports().add(packageImport); |
| assertSuperset(transition.getOwnedElements().contains(packageImport)); |
| } |
| |
| public void testOwnedMember() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| EList<NamedElement> namedElements = transition.getOwnedMembers(); |
| EList<NamedElement> namedElements2 = transition.getOwnedMembers(); |
| assertSame(namedElements, namedElements2); |
| } |
| |
| public void testImportedMember() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| EList<PackageableElement> packageableElements = transition |
| .getImportedMembers(); |
| EList<PackageableElement> packageableElements2 = transition |
| .getImportedMembers(); |
| assertSame(packageableElements, packageableElements2); |
| } |
| |
| public void testMember() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| EList<NamedElement> namedElements = transition.getMembers(); |
| EList<NamedElement> namedElements2 = transition.getMembers(); |
| assertSame(namedElements, namedElements2); |
| } |
| |
| public void testRedefinedElement() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| EList<RedefinableElement> redefinableElements = transition |
| .getRedefinedElements(); |
| EList<RedefinableElement> redefinableElements2 = transition |
| .getRedefinedElements(); |
| assertSame(redefinableElements, redefinableElements2); |
| } |
| |
| public void testRedefinitionContext() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| EList<Classifier> classifiers = transition.getRedefinitionContexts(); |
| EList<Classifier> classifiers2 = transition.getRedefinitionContexts(); |
| assertSame(classifiers, classifiers2); |
| } |
| |
| public void testEffect() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| ProtocolStateMachine protocolStateMachine = UML |
| .createProtocolStateMachine(); |
| assertValid(protocolStateMachine); |
| transition.setEffect(protocolStateMachine); |
| assertSuperset( |
| transition.getOwnedElements().contains(protocolStateMachine)); |
| |
| StateMachine stateMachine = UML.createStateMachine(); |
| assertValid(stateMachine); |
| transition.setEffect(stateMachine); |
| assertSuperset(transition.getOwnedElements().contains(stateMachine)); |
| } |
| |
| public void testGuard() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| IntervalConstraint intervalConstraint = UML.createIntervalConstraint(); |
| assertValid(intervalConstraint); |
| transition.setGuard(intervalConstraint); |
| assertSuperset(transition.getOwnedRules().contains(intervalConstraint)); |
| |
| TimeConstraint timeConstraint = UML.createTimeConstraint(); |
| assertValid(timeConstraint); |
| transition.setGuard(timeConstraint); |
| assertSuperset(transition.getOwnedRules().contains(timeConstraint)); |
| |
| Transition transition2 = UML.createTransition(); |
| assertValid(transition2); |
| |
| InteractionConstraint interactionConstraint = UML |
| .createInteractionConstraint(); |
| assertValid(interactionConstraint); |
| transition2.setGuard(interactionConstraint); |
| assertSuperset( |
| transition2.getOwnedRules().contains(interactionConstraint)); |
| |
| Constraint constraint = UML.createConstraint(); |
| assertValid(constraint); |
| transition2.setGuard(constraint); |
| assertSuperset(transition2.getOwnedRules().contains(constraint)); |
| |
| Transition transition3 = UML.createTransition(); |
| assertValid(transition3); |
| |
| DurationConstraint durationConstraint = UML.createDurationConstraint(); |
| assertValid(durationConstraint); |
| transition3.setGuard(durationConstraint); |
| assertSuperset( |
| transition3.getOwnedRules().contains(durationConstraint)); |
| } |
| |
| public void testRedefinedTransition() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| Transition transition2 = UML.createTransition(); |
| assertValid(transition2); |
| transition.setRedefinedTransition(transition2); |
| assertSuperset(transition.getRedefinedElements().contains(transition2)); |
| |
| ProtocolTransition protocolTransition = UML.createProtocolTransition(); |
| assertValid(protocolTransition); |
| transition.setRedefinedTransition(protocolTransition); |
| assertSuperset( |
| transition.getRedefinedElements().contains(protocolTransition)); |
| } |
| |
| public void testSource() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| Pseudostate pseudostate = UML.createPseudostate(); |
| assertValid(pseudostate); |
| transition.setSource(pseudostate); |
| |
| ConnectionPointReference connectionPointReference = UML |
| .createConnectionPointReference(); |
| assertValid(connectionPointReference); |
| transition.setSource(connectionPointReference); |
| |
| Transition transition2 = UML.createTransition(); |
| assertValid(transition2); |
| |
| FinalState finalState = UML.createFinalState(); |
| assertValid(finalState); |
| transition2.setSource(finalState); |
| |
| State state = UML.createState(); |
| assertValid(state); |
| transition2.setSource(state); |
| } |
| |
| public void testTarget() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| Pseudostate pseudostate = UML.createPseudostate(); |
| assertValid(pseudostate); |
| transition.setTarget(pseudostate); |
| |
| ConnectionPointReference connectionPointReference = UML |
| .createConnectionPointReference(); |
| assertValid(connectionPointReference); |
| transition.setTarget(connectionPointReference); |
| |
| Transition transition2 = UML.createTransition(); |
| assertValid(transition2); |
| |
| FinalState finalState = UML.createFinalState(); |
| assertValid(finalState); |
| transition2.setTarget(finalState); |
| |
| State state = UML.createState(); |
| assertValid(state); |
| transition2.setTarget(state); |
| } |
| |
| public void testTrigger() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| Trigger trigger = UML.createTrigger(); |
| assertValid(trigger); |
| transition.getTriggers().add(trigger); |
| assertSuperset(transition.getOwnedElements().contains(trigger)); |
| } |
| |
| public void testContainer() { |
| Transition transition = UML.createTransition(); |
| assertValid(transition); |
| |
| Region region = UML.createRegion(); |
| assertValid(region); |
| transition.setContainer(region); |
| assertSuperset(transition.getNamespace() == region); |
| } |
| |
| } |