blob: 10dd122dbfcb78adab0534fc4ab87b02d5d23d87 [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.ClassifierTemplateParameter;
import org.eclipse.uml2.uml.Comment;
import org.eclipse.uml2.uml.ConnectableElementTemplateParameter;
import org.eclipse.uml2.uml.Element;
import org.eclipse.uml2.uml.Model;
import org.eclipse.uml2.uml.Operation;
import org.eclipse.uml2.uml.OperationTemplateParameter;
import org.eclipse.uml2.uml.Profile;
import org.eclipse.uml2.uml.StringExpression;
import org.eclipse.uml2.uml.TemplateParameter;
import org.eclipse.uml2.uml.TemplateSignature;
/**
* @author Eike Stepper
*/
public class TemplateSignatureTest
extends _Abstract_Compliance_Test_ {
public void testEAnnotations() {
TemplateSignature templateSignature = UML.createTemplateSignature();
assertValid(templateSignature);
EAnnotation eAnnotation = ECORE.createEAnnotation();
assertValid(eAnnotation);
templateSignature.getEAnnotations().add(eAnnotation);
}
public void testOwnedComment() {
TemplateSignature templateSignature = UML.createTemplateSignature();
assertValid(templateSignature);
Comment comment = UML.createComment();
assertValid(comment);
templateSignature.getOwnedComments().add(comment);
assertSuperset(templateSignature.getOwnedElements().contains(comment));
}
public void testOwnedElement() {
TemplateSignature templateSignature = UML.createTemplateSignature();
assertValid(templateSignature);
EList<Element> elements = templateSignature.getOwnedElements();
EList<Element> elements2 = templateSignature.getOwnedElements();
assertSame(elements, elements2);
}
public void testParameter() {
TemplateSignature templateSignature = UML.createTemplateSignature();
assertValid(templateSignature);
ClassifierTemplateParameter classifierTemplateParameter = UML
.createClassifierTemplateParameter();
assertValid(classifierTemplateParameter);
templateSignature.getParameters().add(classifierTemplateParameter);
ConnectableElementTemplateParameter connectableElementTemplateParameter = UML
.createConnectableElementTemplateParameter();
assertValid(connectableElementTemplateParameter);
templateSignature.getParameters()
.add(connectableElementTemplateParameter);
TemplateParameter templateParameter = UML.createTemplateParameter();
assertValid(templateParameter);
templateSignature.getParameters().add(templateParameter);
OperationTemplateParameter operationTemplateParameter = UML
.createOperationTemplateParameter();
assertValid(operationTemplateParameter);
templateSignature.getParameters().add(operationTemplateParameter);
}
public void testTemplate() {
TemplateSignature templateSignature = UML.createTemplateSignature();
assertValid(templateSignature);
org.eclipse.uml2.uml.Package package_ = UML.createPackage();
assertValid(package_);
templateSignature.setTemplate(package_);
assertSuperset(templateSignature.getOwner() == package_);
Operation operation = UML.createOperation();
assertValid(operation);
templateSignature.setTemplate(operation);
assertSuperset(templateSignature.getOwner() == operation);
TemplateSignature templateSignature2 = UML.createTemplateSignature();
assertValid(templateSignature2);
Model model = UML.createModel();
assertValid(model);
templateSignature2.setTemplate(model);
assertSuperset(templateSignature2.getOwner() == model);
Profile profile = UML.createProfile();
assertValid(profile);
templateSignature2.setTemplate(profile);
assertSuperset(templateSignature2.getOwner() == profile);
TemplateSignature templateSignature3 = UML.createTemplateSignature();
assertValid(templateSignature3);
StringExpression stringExpression = UML.createStringExpression();
assertValid(stringExpression);
templateSignature3.setTemplate(stringExpression);
assertSuperset(templateSignature3.getOwner() == stringExpression);
}
public void testOwnedParameter() {
TemplateSignature templateSignature = UML.createTemplateSignature();
assertValid(templateSignature);
ClassifierTemplateParameter classifierTemplateParameter = UML
.createClassifierTemplateParameter();
assertValid(classifierTemplateParameter);
templateSignature.getOwnedParameters().add(classifierTemplateParameter);
assertSuperset(templateSignature.getOwnedElements()
.contains(classifierTemplateParameter));
assertSuperset(templateSignature.getParameters()
.contains(classifierTemplateParameter));
ConnectableElementTemplateParameter connectableElementTemplateParameter = UML
.createConnectableElementTemplateParameter();
assertValid(connectableElementTemplateParameter);
templateSignature.getOwnedParameters()
.add(connectableElementTemplateParameter);
assertSuperset(templateSignature.getOwnedElements()
.contains(connectableElementTemplateParameter));
assertSuperset(templateSignature.getParameters()
.contains(connectableElementTemplateParameter));
TemplateParameter templateParameter = UML.createTemplateParameter();
assertValid(templateParameter);
templateSignature.getOwnedParameters().add(templateParameter);
assertSuperset(
templateSignature.getOwnedElements().contains(templateParameter));
assertSuperset(
templateSignature.getParameters().contains(templateParameter));
OperationTemplateParameter operationTemplateParameter = UML
.createOperationTemplateParameter();
assertValid(operationTemplateParameter);
templateSignature.getOwnedParameters().add(operationTemplateParameter);
assertSuperset(templateSignature.getOwnedElements()
.contains(operationTemplateParameter));
assertSuperset(templateSignature.getParameters()
.contains(operationTemplateParameter));
}
}