Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBelqassim Djafer2015-07-07 14:05:17 +0000
committerPierre-Charles David2015-08-25 14:49:27 +0000
commit89cbaeda8250006a41d9cbe3684a46043bf31a70 (patch)
treeb8ebc9c28a953d4ccf8723c5e401e83d99a68e70
parent23af9fd4dada1e0736248ac19995238a1bcd1671 (diff)
downloadorg.eclipse.sirius-89cbaeda8250006a41d9cbe3684a46043bf31a70.tar.gz
org.eclipse.sirius-89cbaeda8250006a41d9cbe3684a46043bf31a70.tar.xz
org.eclipse.sirius-89cbaeda8250006a41d9cbe3684a46043bf31a70.zip
[475819] Display viewpoints by their labels in ViewpointSelection window
Bug: 475819 Change-Id: Ibc01fd8d2f8ffc28aa98660fd51b2f16c936e855 Cherry-picked-from: 464254 Signed-off-by: Belqassim Djafer <belqassim.djafer@obeo.fr> Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/My.ecore3
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/ViewpointSelectionDialogTest.odesign5
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/representations.aird4
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/ViewpointSelectionDialogTest.java81
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java1
-rw-r--r--plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/api/viewpoint/ViewpointSelectionDialog.java3
-rw-r--r--plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/internal/viewpoint/ViewpointSelectionDialog.java3
7 files changed, 98 insertions, 2 deletions
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/My.ecore b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/My.ecore
new file mode 100644
index 0000000000..b60907b8b8
--- /dev/null
+++ b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/My.ecore
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ name="p0"/>
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/ViewpointSelectionDialogTest.odesign b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/ViewpointSelectionDialogTest.odesign
new file mode 100644
index 0000000000..5644fef0c3
--- /dev/null
+++ b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/ViewpointSelectionDialogTest.odesign
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" name="ViewpointSelectionDialogTest" version="10.0.0.201505222000">
+ <ownedViewpoints name="ViewpointID" label="Viewpoint Label"/>
+ <ownedViewpoints name="Viewpoint2ID"/>
+</description:Group>
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/representations.aird b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/representations.aird
new file mode 100644
index 0000000000..05d281c1e5
--- /dev/null
+++ b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/ViewpointSelectionDialog/representations.aird
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<viewpoint:DAnalysis xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xmi:id="_z6yuECSMEeWK8pQtEvtDeA" version="10.0.0.201505222000">
+ <semanticResources>My.ecore</semanticResources>
+</viewpoint:DAnalysis>
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/ViewpointSelectionDialogTest.java b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/ViewpointSelectionDialogTest.java
new file mode 100644
index 0000000000..4640048677
--- /dev/null
+++ b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/ViewpointSelectionDialogTest.java
@@ -0,0 +1,81 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.sirius.tests.swtbot;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.equalTo;
+
+import org.eclipse.sirius.tests.swtbot.support.api.AbstractSiriusSwtBotGefTestCase;
+import org.eclipse.sirius.tests.swtbot.support.api.business.UIResource;
+import org.eclipse.sirius.ui.tools.api.views.modelexplorerview.IModelExplorerView;
+import org.eclipse.swtbot.eclipse.finder.widgets.SWTBotView;
+import org.eclipse.swtbot.swt.finder.SWTBot;
+import org.eclipse.swtbot.swt.finder.waits.Conditions;
+import org.eclipse.swtbot.swt.finder.widgets.SWTBotTable;
+import org.eclipse.swtbot.swt.finder.widgets.SWTBotTreeItem;
+
+/**
+ * Test the labels of viewpoints in viewpoint selection window.
+ *
+ * @author <a href="mailto:belqassim.djafer@obeo.fr">Belqassim Djafer</a>
+ */
+public class ViewpointSelectionDialogTest extends AbstractSiriusSwtBotGefTestCase {
+
+ private static final String MODEL_FILE = "My.ecore";
+
+ private static final String SESSION_FILE = "representations.aird";
+
+ private static final String VSM_FILE = "ViewpointSelectionDialogTest.odesign";
+
+ private static final String VSM1_ID = "ViewpointID";
+
+ private static final String VSM2_ID = "Viewpoint2ID";
+
+ private static final String VSM_LABEL = "Viewpoint Label";
+
+ private static final String DATA_UNIT_DIR = "data/unit/ViewpointSelectionDialog/";
+
+ private static final String VIEWPOINTS_SELECTION = "Viewpoints Selection";
+
+ SWTBot modelExplorerViewBot;
+
+ @Override
+ protected void onSetUpBeforeClosingWelcomePage() throws Exception {
+ copyFileToTestProject(Activator.PLUGIN_ID, DATA_UNIT_DIR, MODEL_FILE, SESSION_FILE, VSM_FILE);
+ }
+
+ @Override
+ protected void onSetUpAfterOpeningDesignerPerspective() throws Exception {
+ sessionAirdResource = new UIResource(designerProject, SESSION_FILE);
+ localSession = designerPerspective.openSessionFromFile(sessionAirdResource, true);
+
+ SWTBotView modelExplorerView = bot.viewById(IModelExplorerView.ID);
+ modelExplorerView.setFocus();
+ modelExplorerViewBot = modelExplorerView.bot();
+ }
+
+ /**
+ * Ensure that the labels of viewpoints are displayed instead of viewpoints
+ * names on the viewpoint selection window.
+ *
+ */
+ public void testViewpointsLabelsOnViewpointSelectionDialog() {
+ // open the viewpoint selection dialog
+ SWTBotTreeItem sessionTreeItem = localSession.getRootSessionTreeItem();
+ sessionTreeItem.contextMenu(VIEWPOINTS_SELECTION).click();
+ bot.waitUntil(Conditions.shellIsActive(VIEWPOINTS_SELECTION));
+ assertThat("The dialog is not correct for the viewpoints selection", bot.activeShell().getText(), equalTo(VIEWPOINTS_SELECTION));
+ SWTBotTable table = bot.table(0);
+ assertTrue("The Viewpoint should be displayed by its label", table.containsItem(VSM_LABEL) && !table.containsItem(VSM1_ID));
+ assertTrue("The Viewpoint should be displayed by its id", table.containsItem(VSM2_ID));
+ }
+
+}
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java
index 3e5f8d7f1f..3444148c93 100644
--- a/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java
+++ b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java
@@ -358,6 +358,7 @@ public class AllTestSuite extends TestCase {
// Scenario test cases
suite.addTestSuite(ESEDemoTest.class);
suite.addTestSuite(ValidationTest.class);
+ suite.addTestSuite(ViewpointSelectionDialogTest.class);
suite.addTestSuite(InitializeEmptySessionTest.class);
suite.addTestSuite(InitializeSessionTest.class);
suite.addTestSuite(RepairTest.class);
diff --git a/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/api/viewpoint/ViewpointSelectionDialog.java b/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/api/viewpoint/ViewpointSelectionDialog.java
index cce64b83a3..4c5eaed567 100644
--- a/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/api/viewpoint/ViewpointSelectionDialog.java
+++ b/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/api/viewpoint/ViewpointSelectionDialog.java
@@ -28,6 +28,7 @@ import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.SelectionChangedEvent;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerCell;
+import org.eclipse.sirius.business.api.query.IdentifiedElementQuery;
import org.eclipse.sirius.business.api.query.ViewpointQuery;
import org.eclipse.sirius.business.internal.movida.ViewpointDependenciesTracker;
import org.eclipse.sirius.business.internal.movida.registry.ViewpointRegistry;
@@ -99,7 +100,7 @@ public class ViewpointSelectionDialog extends TitleAreaDialog {
}
public String getLabel() {
- return viewpoint.getName();
+ return new IdentifiedElementQuery(viewpoint).getLabel();
}
public URI getViewpointURI() {
diff --git a/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/internal/viewpoint/ViewpointSelectionDialog.java b/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/internal/viewpoint/ViewpointSelectionDialog.java
index d9ae4f4e0f..a6d9443a74 100644
--- a/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/internal/viewpoint/ViewpointSelectionDialog.java
+++ b/plugins/org.eclipse.sirius.ui/src/org/eclipse/sirius/ui/business/internal/viewpoint/ViewpointSelectionDialog.java
@@ -34,6 +34,7 @@ import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.window.ToolTip;
import org.eclipse.sirius.business.api.componentization.ViewpointRegistry;
+import org.eclipse.sirius.business.api.query.IdentifiedElementQuery;
import org.eclipse.sirius.business.api.query.ViewpointQuery;
import org.eclipse.sirius.ext.base.Option;
import org.eclipse.sirius.viewpoint.description.RepresentationExtensionDescription;
@@ -94,7 +95,7 @@ public class ViewpointSelectionDialog extends TitleAreaDialog {
* @return viewpoint name
*/
public String getLabel() {
- return viewpoint.getName();
+ return new IdentifiedElementQuery(viewpoint).getLabel();
}
/**

Back to the top