package org.eclipse.uml2.diagram.usecase.tests.tool; import org.eclipse.gef.Tool; import org.eclipse.gef.palette.PaletteContainer; import org.eclipse.gef.palette.PaletteRoot; import org.eclipse.gef.palette.ToolEntry; import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.ActorEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.ActorInPackageEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.ConstraintEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.InnerUseCaseEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.NestedPackageEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.PackageFramecontentsEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.SubjectEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.SubjectUsecasesEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.UseCaseEditPart; import org.eclipse.uml2.diagram.usecase.edit.parts.UseCaseinPackageEditPart; import org.eclipse.uml2.diagram.usecase.part.UMLPaletteFactory; import org.eclipse.uml2.diagram.usecase.part.UMLVisualIDRegistry; public class NodesGroupTest extends UseCaseCreationToolTestBase { /** * @generated */ PaletteRoot myRoot; /** * @generated */ Tool myUseCaseTool; /** * @generated */ Tool myActorTool; /** * @generated */ Tool mySubjectTool; /** * @generated */ Tool myPackageTool; /** * @generated */ Tool myConstraintTool; /** * @generated */ @Override protected void setUp() throws Exception { super.setUp(); myRoot = new PaletteRoot(); new UMLPaletteFactory().fillPalette(myRoot); myUseCaseTool = ((ToolEntry) ((PaletteContainer) myRoot.getChildren().get(0)).getChildren().get(0)).createTool(); myActorTool = ((ToolEntry) ((PaletteContainer) myRoot.getChildren().get(0)).getChildren().get(1)).createTool(); mySubjectTool = ((ToolEntry) ((PaletteContainer) myRoot.getChildren().get(0)).getChildren().get(2)).createTool(); myPackageTool = ((ToolEntry) ((PaletteContainer) myRoot.getChildren().get(0)).getChildren().get(3)).createTool(); myConstraintTool = ((ToolEntry) ((PaletteContainer) myRoot.getChildren().get(0)).getChildren().get(4)).createTool(); } /** * @generated */ @Override protected void tearDown() throws Exception { myRoot = null; myUseCaseTool = null; myActorTool = null; mySubjectTool = null; myPackageTool = null; myConstraintTool = null; super.tearDown(); } /** * @generated */ public NodesGroupTest(String name) { super(name); } /** * @generated */ public void testUseCaseInPackage() { IGraphicalEditPart diagramEditPart = getDiagramEditPart(); createNodeByTool(myUseCaseTool, 200, 100); IGraphicalEditPart editPart1 = diagramEditPart.getChildBySemanticHint(UMLVisualIDRegistry.getType(UseCaseEditPart.VISUAL_ID)); assertNotNull(editPart1); assertEquals("UseCase", getMetaclassName(editPart1)); getDiagramEditPart().getViewer().flush(); } /** * @generated */ public void testActorInPackage() { IGraphicalEditPart diagramEditPart = getDiagramEditPart(); createNodeByTool(myActorTool, 200, 100); IGraphicalEditPart editPart2 = diagramEditPart.getChildBySemanticHint(UMLVisualIDRegistry.getType(ActorEditPart.VISUAL_ID)); assertNotNull(editPart2); assertEquals("Actor", getMetaclassName(editPart2)); getDiagramEditPart().getViewer().flush(); } /** * @generated */ public void testSubjectInPackage() { IGraphicalEditPart diagramEditPart = getDiagramEditPart(); createNodeByTool(mySubjectTool, 200, 100); IGraphicalEditPart editPart3 = diagramEditPart.getChildBySemanticHint(UMLVisualIDRegistry.getType(SubjectEditPart.VISUAL_ID)); assertNotNull(editPart3); assertEquals("Component", getMetaclassName(editPart3)); getDiagramEditPart().getViewer().flush(); } /** * @generated */ public void testPackageInPackage() { IGraphicalEditPart diagramEditPart = getDiagramEditPart(); createNodeByTool(myPackageTool, 200, 100); IGraphicalEditPart editPart4 = diagramEditPart.getChildBySemanticHint(UMLVisualIDRegistry.getType(NestedPackageEditPart.VISUAL_ID)); assertNotNull(editPart4); assertEquals("Package", getMetaclassName(editPart4)); getDiagramEditPart().getViewer().flush(); } /** * @generated */ public void testConstraintInPackage() { IGraphicalEditPart diagramEditPart = getDiagramEditPart(); createNodeByTool(myConstraintTool, 200, 100); IGraphicalEditPart editPart5 = diagramEditPart.getChildBySemanticHint(UMLVisualIDRegistry.getType(ConstraintEditPart.VISUAL_ID)); assertNotNull(editPart5); assertEquals("Constraint", getMetaclassName(editPart5)); getDiagramEditPart().getViewer().flush(); } /** * @generated */ public void testUseCaseInSubject() { IGraphicalEditPart diagramEditPart = getDiagramEditPart(); createNodeByTool(mySubjectTool, 200, 100); IGraphicalEditPart editPart6 = diagramEditPart.getChildBySemanticHint(UMLVisualIDRegistry.getType(SubjectEditPart.VISUAL_ID)); assertNotNull(editPart6); getDiagramEditPart().getViewer().flush(); IGraphicalEditPart compartment1 = editPart6.getChildBySemanticHint(UMLVisualIDRegistry.getType(SubjectUsecasesEditPart.VISUAL_ID)); assertNotNull(compartment1); createNodeByTool(myUseCaseTool, 201, 130); IGraphicalEditPart editPart7 = compartment1.getChildBySemanticHint(UMLVisualIDRegistry.getType(InnerUseCaseEditPart.VISUAL_ID)); assertNotNull(editPart7); assertEquals("UseCase", getMetaclassName(editPart7)); getDiagramEditPart().getViewer().flush(); } /** * @generated */ public void testUseCaseInNestedPackage() { IGraphicalEditPart diagramEditPart = getDiagramEditPart(); createNodeByTool(myPackageTool, 200, 100); IGraphicalEditPart editPart8 = diagramEditPart.getChildBySemanticHint(UMLVisualIDRegistry.getType(NestedPackageEditPart.VISUAL_ID)); assertNotNull(editPart8); getDiagramEditPart().getViewer().flush(); IGraphicalEditPart compartment2 = editPart8.getChildBySemanticHint(UMLVisualIDRegistry.getType(PackageFramecontentsEditPart.VISUAL_ID)); assertNotNull(compartment2); createNodeByTool(myUseCaseTool, 201, 130); IGraphicalEditPart editPart9 = compartment2.getChildBySemanticHint(UMLVisualIDRegistry.getType(UseCaseinPackageEditPart.VISUAL_ID)); assertNotNull(editPart9); assertEquals("UseCase", getMetaclassName(editPart9)); getDiagramEditPart().getViewer().flush(); } /** * @generated */ public void testActorInNestedPackage() { IGraphicalEditPart diagramEditPart = getDiagramEditPart(); createNodeByTool(myPackageTool, 200, 100); IGraphicalEditPart editPart10 = diagramEditPart.getChildBySemanticHint(UMLVisualIDRegistry.getType(NestedPackageEditPart.VISUAL_ID)); assertNotNull(editPart10); getDiagramEditPart().getViewer().flush(); IGraphicalEditPart compartment3 = editPart10.getChildBySemanticHint(UMLVisualIDRegistry.getType(PackageFramecontentsEditPart.VISUAL_ID)); assertNotNull(compartment3); createNodeByTool(myActorTool, 201, 130); IGraphicalEditPart editPart11 = compartment3.getChildBySemanticHint(UMLVisualIDRegistry.getType(ActorInPackageEditPart.VISUAL_ID)); assertNotNull(editPart11); assertEquals("Actor", getMetaclassName(editPart11)); getDiagramEditPart().getViewer().flush(); } /** * @generated */ private static java.lang.String getMetaclassName(IGraphicalEditPart editPart) { return editPart.getNotationView().getElement().eClass().getName(); } }