| /******************************************************************************* |
| * 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.runtime.tests; |
| |
| import static org.junit.Assert.assertFalse; |
| import static org.junit.Assert.assertNotNull; |
| import static org.junit.Assert.assertNull; |
| import static org.junit.Assert.assertSame; |
| import static org.junit.Assert.assertTrue; |
| |
| import org.eclipse.emf.common.util.URI; |
| import org.eclipse.gmf.runtime.notation.Diagram; |
| import org.eclipse.gmf.runtime.notation.NotationFactory; |
| import org.eclipse.papyrus.infra.core.resource.ModelSet; |
| import org.eclipse.papyrus.infra.gmfdiag.layers.runtime.NotationDiagramHelper; |
| import org.eclipse.papyrus.infra.gmfdiag.layers.runtime.model.LayersModelResource; |
| import org.junit.After; |
| import org.junit.Before; |
| import org.junit.Test; |
| |
| |
| /** |
| * @author cedric dumoulin |
| * |
| */ |
| public class NotationDiagramMngrTest { |
| |
| /** |
| * URI used to store the created model. |
| */ |
| protected static final String PROJECT_MODEL_URI = "org.eclipse.papyrus.infra.core/tmp/model1.di"; |
| |
| /** |
| * ModelSet created for each test |
| */ |
| protected ModelSet modelSet; |
| |
| /** |
| * @throws java.lang.Exception |
| */ |
| @Before |
| public void setUp() throws Exception { |
| // Create ModelSet and Model |
| ModelSet mngr = new ModelSet(); |
| LayersModelResource layersModel = new LayersModelResource(); |
| mngr.registerModel(layersModel); |
| // Do create resources |
| URI uri = URI.createPlatformResourceURI(PROJECT_MODEL_URI, true); |
| mngr.createModels(uri); |
| |
| modelSet = mngr; |
| } |
| |
| /** |
| * @throws java.lang.Exception |
| */ |
| @After |
| public void tearDown() throws Exception { |
| modelSet.unload(); |
| |
| } |
| |
| |
| /** |
| * Test method for {@link org.eclipse.papyrus.infra.gmfdiag.layers.runtime.NotationDiagramHelper#NotationDiagramMngr(org.eclipse.gmf.runtime.notation.Diagram)}. |
| */ |
| @Test |
| public void testNotationDiagramHelper() { |
| |
| // Create a Diagram |
| Diagram diagram = NotationFactory.eINSTANCE.createDiagram(); |
| // Get LayersModel |
| LayersModelResource layersModel = (LayersModelResource) modelSet.getModel(LayersModelResource.MODEL_ID); |
| |
| // Check creation |
| NotationDiagramHelper diagramHelper = new NotationDiagramHelper(layersModel, diagram); |
| assertNotNull("ManagerCreated", diagramHelper); |
| } |
| |
| /** |
| * Test method for {@link org.eclipse.papyrus.infra.gmfdiag.layers.runtime.NotationDiagramHelper#dispose()}. |
| */ |
| @Test |
| public void testDispose() { |
| // Create a Diagram |
| Diagram diagram = NotationFactory.eINSTANCE.createDiagram(); |
| // Get LayersModel |
| LayersModelResource layersModel = (LayersModelResource) modelSet.getModel(LayersModelResource.MODEL_ID); |
| |
| |
| // Create mngr |
| NotationDiagramHelper diagramHelper = new NotationDiagramHelper(layersModel, diagram); |
| |
| // Do dispose |
| diagramHelper.dispose(); |
| // Check disposal |
| assertNull("disposed", diagramHelper.getDiagram()); |
| |
| } |
| |
| /** |
| * Test method for {@link org.eclipse.papyrus.infra.gmfdiag.layers.runtime.NotationDiagramHelper#getDiagram()}. |
| */ |
| @Test |
| public void testGetDiagram() { |
| // Create a Diagram |
| Diagram diagram = NotationFactory.eINSTANCE.createDiagram(); |
| // Get LayersModel |
| LayersModelResource layersModel = (LayersModelResource) modelSet.getModel(LayersModelResource.MODEL_ID); |
| |
| |
| // Create mngr |
| NotationDiagramHelper diagramHelper = new NotationDiagramHelper(layersModel, diagram); |
| |
| // check |
| assertNotNull("getDiagram", diagramHelper.getDiagram()); |
| assertSame("getDiagram", diagram, diagramHelper.getDiagram()); |
| } |
| |
| /** |
| * Test method for {@link org.eclipse.papyrus.infra.gmfdiag.layers.runtime.NotationDiagramHelper#attachLayerStack()}. |
| */ |
| @Test |
| public void testAttachLayerStack() { |
| // Create a Diagram |
| Diagram diagram = NotationFactory.eINSTANCE.createDiagram(); |
| // Get LayersModel |
| LayersModelResource layersModel = (LayersModelResource) modelSet.getModel(LayersModelResource.MODEL_ID); |
| |
| |
| // Create mngr |
| NotationDiagramHelper diagramHelper = new NotationDiagramHelper(layersModel, diagram); |
| |
| diagramHelper.attachLayersStack(); |
| |
| assertTrue("LayerStack is attached to diagram", diagramHelper.isLayersStackAttached()); |
| } |
| |
| /** |
| * Test method for {@link org.eclipse.papyrus.infra.gmfdiag.layers.runtime.NotationDiagramHelper#removeLayerStack()}. |
| */ |
| @Test |
| public void testRemoveLayerStack() { |
| // Create a Diagram |
| Diagram diagram = NotationFactory.eINSTANCE.createDiagram(); |
| // Get LayersModel |
| LayersModelResource layersModel = (LayersModelResource) modelSet.getModel(LayersModelResource.MODEL_ID); |
| |
| |
| // Create mngr |
| NotationDiagramHelper diagramHelper = new NotationDiagramHelper(layersModel, diagram); |
| |
| diagramHelper.attachLayersStack(); |
| assertTrue("LayerStack is attached to diagram", diagramHelper.isLayersStackAttached()); |
| |
| // Try to remove LayerStack |
| diagramHelper.removeLayersStack(); |
| assertFalse("LayerStack is detached from diagram", diagramHelper.isLayersStackAttached()); |
| |
| |
| } |
| |
| /** |
| * Test method for {@link org.eclipse.papyrus.infra.gmfdiag.layers.runtime.NotationDiagramHelper#isLayerStackAttached()}. |
| */ |
| @Test |
| public void testIsLayerStackAttached() { |
| // Create a Diagram |
| Diagram diagram = NotationFactory.eINSTANCE.createDiagram(); |
| // Get LayersModel |
| LayersModelResource layersModel = (LayersModelResource) modelSet.getModel(LayersModelResource.MODEL_ID); |
| |
| |
| // Create mngr |
| NotationDiagramHelper diagramHelper = new NotationDiagramHelper(layersModel, diagram); |
| } |
| |
| } |