blob: e5e03a1adce054a9cf60b65b840972bbdf0bd685 [file] [log] [blame]
/*
* 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);
}
}