diff options
Diffstat (limited to 'tests/junit/plugins/uml/expressions/org.eclipse.papyrus.uml.expressions.tests/src/org/eclipse/papyrus/uml/expressions/tests/IsKindOfExpressionTest.java')
-rwxr-xr-x | tests/junit/plugins/uml/expressions/org.eclipse.papyrus.uml.expressions.tests/src/org/eclipse/papyrus/uml/expressions/tests/IsKindOfExpressionTest.java | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/tests/junit/plugins/uml/expressions/org.eclipse.papyrus.uml.expressions.tests/src/org/eclipse/papyrus/uml/expressions/tests/IsKindOfExpressionTest.java b/tests/junit/plugins/uml/expressions/org.eclipse.papyrus.uml.expressions.tests/src/org/eclipse/papyrus/uml/expressions/tests/IsKindOfExpressionTest.java new file mode 100755 index 00000000000..66fcfaedb83 --- /dev/null +++ b/tests/junit/plugins/uml/expressions/org.eclipse.papyrus.uml.expressions.tests/src/org/eclipse/papyrus/uml/expressions/tests/IsKindOfExpressionTest.java @@ -0,0 +1,70 @@ +/***************************************************************************** + * Copyright (c) 2017 CEA LIST. + * + * + * 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: + * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation + * + *****************************************************************************/ + +package org.eclipse.papyrus.uml.expressions.tests; + +import org.eclipse.papyrus.uml.expressions.umlexpressions.IsKindOfExpression; +import org.eclipse.papyrus.uml.expressions.umlexpressions.UMLExpressionsFactory; +import org.eclipse.uml2.uml.Class; +import org.eclipse.uml2.uml.Package; +import org.eclipse.uml2.uml.UMLFactory; +import org.eclipse.uml2.uml.UMLPackage; +import org.junit.Assert; +import org.junit.Test; + +/** + * Tests for the {@link IsKindOfExpression} + * + */ +public class IsKindOfExpressionTest { + + + @Test + public void noMetaclassAndNoContextTest() { + final IsKindOfExpression exp = UMLExpressionsFactory.eINSTANCE.createIsKindOfExpression(); + Assert.assertFalse(exp.evaluate(null)); + } + + @Test + public void metaclassAndNoContext() { + final IsKindOfExpression exp = UMLExpressionsFactory.eINSTANCE.createIsKindOfExpression(); + exp.setUmlEClass(UMLPackage.eINSTANCE.getElement()); + Assert.assertFalse(exp.evaluate(null)); + } + + @Test + public void metaclassAndValidContext_1() { + final IsKindOfExpression exp = UMLExpressionsFactory.eINSTANCE.createIsKindOfExpression(); + exp.setUmlEClass(UMLPackage.eINSTANCE.getElement()); + final Class clazz = UMLFactory.eINSTANCE.createClass(); + Assert.assertTrue(exp.evaluate(clazz)); + } + + @Test + public void metaclassAndValidContext_2() { + final IsKindOfExpression exp = UMLExpressionsFactory.eINSTANCE.createIsKindOfExpression(); + exp.setUmlEClass(UMLPackage.eINSTANCE.getClass_()); + final Class clazz = UMLFactory.eINSTANCE.createClass(); + Assert.assertTrue(exp.evaluate(clazz)); + } + + @Test + public void metaclassAndInvalidContext() { + final IsKindOfExpression exp = UMLExpressionsFactory.eINSTANCE.createIsKindOfExpression(); + exp.setUmlEClass(UMLPackage.eINSTANCE.getClass_()); + final Package clazz = UMLFactory.eINSTANCE.createPackage(); + Assert.assertFalse(exp.evaluate(clazz)); + } + +} |