| /* |
| * 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)); |
| } |
| |
| } |