diff options
Diffstat (limited to 'extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/configmodel/layersconfig/impl/OperatorConfigImplTest.java')
-rw-r--r-- | extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/configmodel/layersconfig/impl/OperatorConfigImplTest.java | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/configmodel/layersconfig/impl/OperatorConfigImplTest.java b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/configmodel/layersconfig/impl/OperatorConfigImplTest.java new file mode 100644 index 00000000000..b435c9faa8e --- /dev/null +++ b/extraplugins/layers/org.eclipse.papyrus.layers.stackmodel/test/org/eclipse/papyrus/layers/configmodel/layersconfig/impl/OperatorConfigImplTest.java @@ -0,0 +1,121 @@ +/******************************************************************************* + * Copyright (c) 2013 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: + * Cedric Dumoulin - cedric.dumoulin@lifl.fr + ******************************************************************************/ +package org.eclipse.papyrus.layers.configmodel.layersconfig.impl; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertSame; +import static org.junit.Assert.assertTrue; + +import org.eclipse.papyrus.layers.configmodel.layersconfig.ClassnameKind; +import org.eclipse.papyrus.layers.configmodel.layersconfig.LayersconfigFactory; +import org.eclipse.papyrus.layers.configmodel.layersconfig.OperatorConfig; +import org.eclipse.papyrus.layers.stackmodel.InstanciationException; +import org.eclipse.papyrus.layers.stackmodel.layers.CustomPropertyOperator; +import org.eclipse.papyrus.layers.stackmodel.layers.DefaultPropertyOperator; +import org.eclipse.papyrus.layers.stackmodel.layers.LayersPackage; +import org.eclipse.papyrus.layers.stackmodel.layers.PropertyOperator; +import org.eclipse.papyrus.layers.stackmodel.operators.BooleanAndOperator; +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + + +/** + * @author cedric dumoulin + * + */ +public class OperatorConfigImplTest { + + protected String BUNDLE_ID = "org.eclipse.papyrus.layers.stackmodel"; + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() throws Exception { + } + + /** + * @throws java.lang.Exception + */ + @After + public void tearDown() throws Exception { + } + + /** + * Test method for {@link org.eclipse.papyrus.layers.configmodel.layersconfig.impl.OperatorConfigImpl#OperatorConfigImpl()}. + */ + @Test + public void testOperatorConfigImpl() { + // Create new object + OperatorConfig opConfig = LayersconfigFactory.eINSTANCE.createOperatorConfig(); + + assertNotNull("instance created", opConfig); + } + + /** + * Test method for {@link org.eclipse.papyrus.layers.configmodel.layersconfig.impl.OperatorConfigImpl#createOperatorDescriptor()}. + */ +// @Test +// public void testCreateOperatorDescriptor() { +// // Create new object +// OperatorConfig opConfig = LayersconfigFactory.eINSTANCE.createOperatorConfig(); +// +// assertNotNull("instance created", opConfig); +// } + + /** + * Test method for {@link org.eclipse.papyrus.layers.configmodel.layersconfig.impl.OperatorConfigImpl#createPojoInstance()}. + * @throws InstanciationException + */ + @Test + public void testCreatePojoInstance() throws InstanciationException { + // Create new object + OperatorConfig opConfig = LayersconfigFactory.eINSTANCE.createOperatorConfig(); + opConfig.setClassname(BooleanAndOperator.class.getName()); + opConfig.setBundleID(BUNDLE_ID); + + PropertyOperator operator = opConfig.createOperatorDescriptor(); + + assertNotNull("operator created", operator); + assertTrue("operator type", operator instanceof CustomPropertyOperator); + assertNotNull("operator nested instance created", ((CustomPropertyOperator)operator).getOperatorInstance()); + assertSame("classnameKind is changed", ClassnameKind.POJO_CLASSNAME, opConfig.getClassnameKind()); + // Try a second time + operator = opConfig.createOperatorDescriptor(); + + assertNotNull("operator created", operator); + assertTrue("operator type", operator instanceof CustomPropertyOperator); + assertNotNull("operator nested instance created", ((CustomPropertyOperator)operator).getOperatorInstance()); + } + + /** + * Test method for {@link org.eclipse.papyrus.layers.configmodel.layersconfig.impl.OperatorConfigImpl#createEmfInstance()}. + * @throws InstanciationException + */ + @Test + public void testCreateEmfInstance() throws InstanciationException { + // Create new object + OperatorConfig opConfig = LayersconfigFactory.eINSTANCE.createOperatorConfig(); + opConfig.setClassname(LayersPackage.eINSTANCE.getDefaultPropertyOperator().getName()); + + PropertyOperator operator = opConfig.createOperatorDescriptor(); + + assertNotNull("operator created", operator); + assertTrue("operator type", operator instanceof DefaultPropertyOperator); + assertSame("classnameKind is changed", ClassnameKind.EMF_CLASSNAME, opConfig.getClassnameKind()); + // Try a second time + operator = opConfig.createOperatorDescriptor(); + + assertNotNull("operator created", operator); + assertTrue("operator type", operator instanceof DefaultPropertyOperator); + } + +} |