diff options
author | pguilet | 2016-10-13 14:50:58 +0000 |
---|---|---|
committer | Laurent Redor | 2017-01-26 17:13:41 +0000 |
commit | 3acde8ddf288ff0088594dbd3c34420adca5a736 (patch) | |
tree | c0f2c2928286aba6701cdd9873ad31a6e23be6d0 /plugins | |
parent | 698470b7a4cb259d6af4d23368852891ac453f3f (diff) | |
download | org.eclipse.sirius-3acde8ddf288ff0088594dbd3c34420adca5a736.tar.gz org.eclipse.sirius-3acde8ddf288ff0088594dbd3c34420adca5a736.tar.xz org.eclipse.sirius-3acde8ddf288ff0088594dbd3c34420adca5a736.zip |
[501073] Add tests for bug fix
-Adds a test verifying that tree items of a VSM opened with the
CustomSiriusEditor are expanded to the level 4.
Bug: 501073
Change-Id: I014e9980fe50d9da43cdeb6ed9bb973bd3d9088d
Signed-off-by: pguilet <pierre.guilet@obeo.fr>
Diffstat (limited to 'plugins')
2 files changed, 83 insertions, 0 deletions
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/editor/vsm/OpeningContextTest.java b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/editor/vsm/OpeningContextTest.java new file mode 100644 index 0000000000..eee0f5901d --- /dev/null +++ b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/editor/vsm/OpeningContextTest.java @@ -0,0 +1,81 @@ +/******************************************************************************* + * Copyright (c) 2017 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.editor.vsm; + +import org.eclipse.sirius.tests.swtbot.Activator; +import org.eclipse.sirius.tests.swtbot.support.api.editor.SWTBotVSMEditor; +import org.eclipse.swtbot.swt.finder.widgets.SWTBotTreeItem; + +/** + * Tests the editor context just after being opened like the expandable status + * of all its items. + * + * @author <a href="mailto:pierre.guilet@obeo.fr">Pierre Guilet</a> + * + */ +public class OpeningContextTest extends AbstractContentAssistTest { + + private static final String PATH = "data/unit/vsm/"; + + private static final String VSM = "ecore.odesign"; + + /** + * {@inheritDoc} + */ + @Override + protected void onSetUpAfterOpeningDesignerPerspective() throws Exception { + copyFileToTestProject(Activator.PLUGIN_ID, PATH, VSM); + + } + + /** + * Tests that just after VSM editor opening, all tree items are expanded + * until the level 4 without user involvement. + */ + public void testExpandableItemStatusAfterOpening() { + SWTBotVSMEditor odesignEditor = openViewpointSpecificationModel(VSM); + SWTBotTreeItem[] treeItem = odesignEditor.bot().tree().getAllItems(); + assertEquals("There should be only one group node under resource node", 1, treeItem.length); + // Level1 + SWTBotTreeItem resourceItem = treeItem[0]; + assertEquals("There should be only one viewpoint node under group node", 1, resourceItem.getItems().length); + // Level2 + SWTBotTreeItem groupItem = resourceItem.getItems()[0]; + assertEquals(errorMessage(2, 6), 6, groupItem.getItems().length); + // Level3 + SWTBotTreeItem viewpointItem = groupItem.getItems()[0]; + assertEquals(errorMessage(3, 7), 7, viewpointItem.getItems().length); + SWTBotTreeItem viewpointItem2 = groupItem.getItems()[2]; + assertEquals(errorMessage(3, 4), 4, viewpointItem2.getItems().length); + + // Level4 + // We check without expanding the level 4 node that we have only one + // sub node corresponding to the empty node. + SWTBotTreeItem entitiesDiagramItem2 = viewpointItem2.getItems()[0]; + assertEquals("The level 4 node should not be expanded. It should contains only the empty node.", 1, entitiesDiagramItem2.getItems().length); + SWTBotTreeItem entitiesDiagramItem = viewpointItem.getItems()[0]; + assertEquals("The level 4 node should not be expanded. It should contains only the empty node.", 1, entitiesDiagramItem.getItems().length); + + // Then we expand the level 4 nodes to verify that we have more than one + // node + // that means we don't have anymore the empty node and thus that is was + // not expanded. + SWTBotTreeItem expandedEntitiesDiagramItem2 = entitiesDiagramItem2.expand(); + assertEquals(errorMessage(4, 2), 2, expandedEntitiesDiagramItem2.getItems().length); + SWTBotTreeItem expandedEntitiesDiagramItem = entitiesDiagramItem.expand(); + assertEquals(errorMessage(4, 9), 9, expandedEntitiesDiagramItem.getItems().length); + } + + private String errorMessage(int level, int subNodeNumber) { + return "The level " + level + " node should have " + subNodeNumber + " sub nodes"; + } + +} 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 8b7ca3c9d7..62feffb4e2 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 @@ -33,6 +33,7 @@ import org.eclipse.sirius.tests.swtbot.editor.vsm.CreateMandatoryElementsTest; import org.eclipse.sirius.tests.swtbot.editor.vsm.CustomizationPropertySectionsTests; import org.eclipse.sirius.tests.swtbot.editor.vsm.MetamodelPropertyTabTests; import org.eclipse.sirius.tests.swtbot.editor.vsm.MigrationOnVsmEditorReloadTest; +import org.eclipse.sirius.tests.swtbot.editor.vsm.OpeningContextTest; import org.eclipse.sirius.tests.swtbot.editor.vsm.ResizeKindEditorTest; import org.eclipse.sirius.tests.swtbot.editor.vsm.VSMFieldTest; import org.eclipse.sirius.tests.swtbot.editor.vsm.ValidationEmptyNameTest; @@ -158,6 +159,7 @@ public class AllTestSuite extends TestCase { suite.addTestSuite(EdgeSelectionTest.class); suite.addTestSuite(DiagramMouseZoomTest.class); suite.addTestSuite(EdgeLabelsMoveFromEdgeMoveTest.class); + suite.addTestSuite(OpeningContextTest.class); } /** |