| /* |
| * 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.BehaviorExecutionSpecification; |
| import org.eclipse.uml2.uml.Comment; |
| import org.eclipse.uml2.uml.Dependency; |
| import org.eclipse.uml2.uml.DestructionOccurrenceSpecification; |
| import org.eclipse.uml2.uml.Element; |
| import org.eclipse.uml2.uml.ExecutionOccurrenceSpecification; |
| import org.eclipse.uml2.uml.GeneralOrdering; |
| import org.eclipse.uml2.uml.Interaction; |
| import org.eclipse.uml2.uml.InteractionOperand; |
| import org.eclipse.uml2.uml.Lifeline; |
| import org.eclipse.uml2.uml.MessageOccurrenceSpecification; |
| import org.eclipse.uml2.uml.OccurrenceSpecification; |
| import org.eclipse.uml2.uml.ProtocolStateMachine; |
| import org.eclipse.uml2.uml.StateMachine; |
| import org.eclipse.uml2.uml.StringExpression; |
| |
| /** |
| * @author Eike Stepper |
| */ |
| public class BehaviorExecutionSpecificationTest |
| extends _Abstract_Compliance_Test_ { |
| |
| public void testEAnnotations() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| EAnnotation eAnnotation = ECORE.createEAnnotation(); |
| assertValid(eAnnotation); |
| behaviorExecutionSpecification.getEAnnotations().add(eAnnotation); |
| } |
| |
| public void testOwnedComment() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| Comment comment = UML.createComment(); |
| assertValid(comment); |
| behaviorExecutionSpecification.getOwnedComments().add(comment); |
| assertSuperset(behaviorExecutionSpecification.getOwnedElements() |
| .contains(comment)); |
| } |
| |
| public void testOwnedElement() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| EList<Element> elements = behaviorExecutionSpecification |
| .getOwnedElements(); |
| EList<Element> elements2 = behaviorExecutionSpecification |
| .getOwnedElements(); |
| assertSame(elements, elements2); |
| } |
| |
| public void testClientDependency() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| EList<Dependency> dependencys = behaviorExecutionSpecification |
| .getClientDependencies(); |
| EList<Dependency> dependencys2 = behaviorExecutionSpecification |
| .getClientDependencies(); |
| assertSame(dependencys, dependencys2); |
| } |
| |
| public void testNameExpression() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| StringExpression stringExpression = UML.createStringExpression(); |
| assertValid(stringExpression); |
| behaviorExecutionSpecification.setNameExpression(stringExpression); |
| assertSuperset(behaviorExecutionSpecification.getOwnedElements() |
| .contains(stringExpression)); |
| } |
| |
| public void testCovered() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| Lifeline lifeline = UML.createLifeline(); |
| assertValid(lifeline); |
| behaviorExecutionSpecification.getCovereds().add(lifeline); |
| } |
| |
| public void testEnclosingOperand() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| InteractionOperand interactionOperand = UML.createInteractionOperand(); |
| assertValid(interactionOperand); |
| behaviorExecutionSpecification.setEnclosingOperand(interactionOperand); |
| assertSuperset(behaviorExecutionSpecification |
| .getNamespace() == interactionOperand); |
| } |
| |
| public void testEnclosingInteraction() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| Interaction interaction = UML.createInteraction(); |
| assertValid(interaction); |
| behaviorExecutionSpecification.setEnclosingInteraction(interaction); |
| assertSuperset( |
| behaviorExecutionSpecification.getNamespace() == interaction); |
| } |
| |
| public void testGeneralOrdering() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| GeneralOrdering generalOrdering = UML.createGeneralOrdering(); |
| assertValid(generalOrdering); |
| behaviorExecutionSpecification.getGeneralOrderings() |
| .add(generalOrdering); |
| assertSuperset(behaviorExecutionSpecification.getOwnedElements() |
| .contains(generalOrdering)); |
| } |
| |
| public void testFinish() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| MessageOccurrenceSpecification messageOccurrenceSpecification = UML |
| .createMessageOccurrenceSpecification(); |
| assertValid(messageOccurrenceSpecification); |
| behaviorExecutionSpecification |
| .setFinish(messageOccurrenceSpecification); |
| |
| OccurrenceSpecification occurrenceSpecification = UML |
| .createOccurrenceSpecification(); |
| assertValid(occurrenceSpecification); |
| behaviorExecutionSpecification.setFinish(occurrenceSpecification); |
| |
| BehaviorExecutionSpecification behaviorExecutionSpecification2 = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification2); |
| |
| ExecutionOccurrenceSpecification executionOccurrenceSpecification = UML |
| .createExecutionOccurrenceSpecification(); |
| assertValid(executionOccurrenceSpecification); |
| behaviorExecutionSpecification2 |
| .setFinish(executionOccurrenceSpecification); |
| |
| DestructionOccurrenceSpecification destructionOccurrenceSpecification = UML |
| .createDestructionOccurrenceSpecification(); |
| assertValid(destructionOccurrenceSpecification); |
| behaviorExecutionSpecification2 |
| .setFinish(destructionOccurrenceSpecification); |
| } |
| |
| public void testStart() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| MessageOccurrenceSpecification messageOccurrenceSpecification = UML |
| .createMessageOccurrenceSpecification(); |
| assertValid(messageOccurrenceSpecification); |
| behaviorExecutionSpecification.setStart(messageOccurrenceSpecification); |
| |
| OccurrenceSpecification occurrenceSpecification = UML |
| .createOccurrenceSpecification(); |
| assertValid(occurrenceSpecification); |
| behaviorExecutionSpecification.setStart(occurrenceSpecification); |
| |
| BehaviorExecutionSpecification behaviorExecutionSpecification2 = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification2); |
| |
| ExecutionOccurrenceSpecification executionOccurrenceSpecification = UML |
| .createExecutionOccurrenceSpecification(); |
| assertValid(executionOccurrenceSpecification); |
| behaviorExecutionSpecification2 |
| .setStart(executionOccurrenceSpecification); |
| |
| DestructionOccurrenceSpecification destructionOccurrenceSpecification = UML |
| .createDestructionOccurrenceSpecification(); |
| assertValid(destructionOccurrenceSpecification); |
| behaviorExecutionSpecification2 |
| .setStart(destructionOccurrenceSpecification); |
| } |
| |
| public void testBehavior() { |
| BehaviorExecutionSpecification behaviorExecutionSpecification = UML |
| .createBehaviorExecutionSpecification(); |
| assertValid(behaviorExecutionSpecification); |
| |
| ProtocolStateMachine protocolStateMachine = UML |
| .createProtocolStateMachine(); |
| assertValid(protocolStateMachine); |
| behaviorExecutionSpecification.setBehavior(protocolStateMachine); |
| |
| StateMachine stateMachine = UML.createStateMachine(); |
| assertValid(stateMachine); |
| behaviorExecutionSpecification.setBehavior(stateMachine); |
| } |
| |
| } |