Beispiel #1
0
  /**
   * Test deleting an operation that contains a statechart diagram. The diagram should be deleted,
   * too.
   */
  public void testDeleteOperationWithStateDiagram() {
    Project p = ProjectManager.getManager().getCurrentProject();
    assertEquals(2, p.getDiagrams().size());

    int sizeMembers = p.getMembers().size();
    int sizeDiagrams = p.getDiagrams().size();

    // test with a class and class diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1", null);
    Object aClass = Model.getCoreFactory().buildClass(package1);

    Collection propertyChangeListeners = p.findFigsForMember(aClass);
    Object model = p.getModel();
    Object voidType = p.findType("void");
    Object oper =
        Model.getCoreFactory().buildOperation(aClass, model, voidType, propertyChangeListeners);

    // try with Statediagram
    Object machine = Model.getStateMachinesFactory().buildStateMachine(oper);
    UMLStateDiagram d = new UMLStateDiagram(Model.getFacade().getNamespace(machine), machine);
    p.addMember(d);
    assertEquals(sizeDiagrams + 1, p.getDiagrams().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());

    p.moveToTrash(oper);

    assertTrue("Operation not in trash", p.isInTrash(oper));
    assertTrue("Statemachine not in trash", Model.getUmlFactory().isRemoved(machine));
    assertEquals(sizeDiagrams, p.getDiagrams().size());
    assertEquals(sizeMembers, p.getMembers().size());
  }
Beispiel #2
0
 /** Test the makeUntitledProject() function. */
 public void testMakeUntitledProject() {
   Project p = ProjectManager.getManager().getCurrentProject();
   assertEquals(2, p.getDiagrams().size());
   assertEquals("untitledModel", Model.getFacade().getName(p.getModel()));
   // maybe next test is going to change in future
   assertEquals(p.getRoot(), p.getModel());
 }
Beispiel #3
0
  /**
   * Test deleting a package with a package with a Activity diagram. The diagram should be deleted,
   * too.
   */
  public void testDeletePackageWithPackageWithActivityDiagram() {
    Project p = ProjectManager.getManager().getCurrentProject();
    assertEquals(2, p.getDiagrams().size());

    int sizeMembers = p.getMembers().size();
    int sizeDiagrams = p.getDiagrams().size();

    // test with a package and a class and activity diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1", null);
    Model.getCoreHelper().setNamespace(package1, p.getModel());
    Object package2 = Model.getModelManagementFactory().buildPackage("test2", null);
    Model.getCoreHelper().setNamespace(package2, package1);

    // build the Activity Diagram
    Object actgrph = Model.getActivityGraphsFactory().buildActivityGraph(package2);
    UMLActivityDiagram d = new UMLActivityDiagram(Model.getFacade().getNamespace(actgrph), actgrph);
    p.addMember(d);
    assertEquals(sizeDiagrams + 1, p.getDiagrams().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());

    p.moveToTrash(package1);

    assertTrue("Package 2 not in trash", Model.getUmlFactory().isRemoved(package2));
    assertTrue("ActivityGraph not in trash", Model.getUmlFactory().isRemoved(actgrph));
    assertEquals(sizeDiagrams, p.getDiagrams().size());
    assertEquals(sizeMembers, p.getMembers().size());
  }
Beispiel #4
0
  /**
   * Test deleting a package with a Class with a Activity diagram. The diagram should be deleted,
   * too.
   */
  public void testDeletePackageWithClassWithActivityDiagram() {
    Project p = ProjectManager.getManager().getOpenProjects().get(0);
    assertEquals(2, p.getDiagramList().size());

    int sizeMembers = p.getMembers().size();
    int sizeDiagrams = p.getDiagramList().size();

    // test with a package and a class and activity diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1");
    Object aClass = Model.getCoreFactory().buildClass(package1);

    // build the Activity Diagram
    Object actgrph = Model.getActivityGraphsFactory().buildActivityGraph(aClass);
    UMLActivityDiagram d = new UMLActivityDiagram(Model.getFacade().getNamespace(actgrph), actgrph);
    p.addMember(d);
    assertEquals(sizeDiagrams + 1, p.getDiagramList().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());

    p.moveToTrash(package1);
    Model.getPump().flushModelEvents();

    assertTrue("Class not in trash", Model.getUmlFactory().isRemoved(aClass));
    assertTrue("ActivityGraph not in trash", Model.getUmlFactory().isRemoved(actgrph));
    assertEquals(sizeDiagrams, p.getDiagramList().size());
    assertEquals(sizeMembers, p.getMembers().size());
  }
Beispiel #5
0
  /**
   * Test deleting an operation that contains a statechart diagram. The diagram should be deleted,
   * too.
   */
  public void testDeleteOperationWithStateDiagram() {
    Project p = ProjectManager.getManager().getOpenProjects().get(0);
    assertEquals(2, p.getDiagramList().size());

    int sizeMembers = p.getMembers().size();
    int sizeDiagrams = p.getDiagramList().size();

    // test with a class and class diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1");
    Object aClass = Model.getCoreFactory().buildClass(package1);

    Object voidType = p.getDefaultReturnType();
    Object oper = Model.getCoreFactory().buildOperation(aClass, voidType);

    // try with Statediagram
    Object machine = Model.getStateMachinesFactory().buildStateMachine(oper);
    UMLStateDiagram d = new UMLStateDiagram(Model.getFacade().getNamespace(machine), machine);
    p.addMember(d);
    assertEquals(sizeDiagrams + 1, p.getDiagramList().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());

    p.moveToTrash(oper);
    Model.getPump().flushModelEvents();

    assertTrue("Operation not in trash", p.isInTrash(oper));
    /* Changed by issue 4281: */
    assertTrue("Statemachine in trash", !Model.getUmlFactory().isRemoved(machine));
    assertEquals(sizeDiagrams + 1, p.getDiagramList().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());
    /* After issue 4284 will be solved, we
     * may even delete the class, and the diagram
     * should still exist. */
  }
Beispiel #6
0
  /**
   * Test deleting a package that contains a Class with Statechart diagram. The diagram should be
   * deleted, too.
   */
  public void testDeletePackageWithStateDiagram() {
    Project p = ProjectManager.getManager().getOpenProjects().get(0);
    assertEquals(2, p.getDiagramList().size());

    int sizeMembers = p.getMembers().size();
    int sizeDiagrams = p.getDiagramList().size();

    // test with a class and class diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1");
    Object aClass = Model.getCoreFactory().buildClass(package1);

    // try with Statediagram
    Object machine = Model.getStateMachinesFactory().buildStateMachine(aClass);
    UMLStateDiagram d = new UMLStateDiagram(Model.getFacade().getNamespace(machine), machine);
    p.addMember(d);
    assertEquals(sizeDiagrams + 1, p.getDiagramList().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());

    p.moveToTrash(package1);
    Model.getPump().flushModelEvents();

    assertTrue("Class not in trash", Model.getUmlFactory().isRemoved(aClass));
    assertTrue("Statemachine not in trash", Model.getUmlFactory().isRemoved(machine));
    assertEquals(sizeDiagrams, p.getDiagramList().size());
    assertEquals(sizeMembers, p.getMembers().size());
  }
Beispiel #7
0
  /** Test deleting a package that contains a Class diagram. The diagram should be deleted, too. */
  public void testDeletePackageWithClassDiagram() {
    Project p = ProjectManager.getManager().getOpenProjects().get(0);
    assertEquals(2, p.getDiagramList().size());
    assertEquals(
        Translator.localize("misc.untitled-model"), Model.getFacade().getName(p.getModel()));
    assertEquals(p.getRoot(), p.getModel());

    int sizeMembers = p.getMembers().size();
    int sizeDiagrams = p.getDiagramList().size();

    // test with a class and class diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1");
    assertNotNull(package1);
    Object package2 = Model.getModelManagementFactory().buildPackage("test2");

    UMLClassDiagram cDiag = new UMLClassDiagram(package2);
    p.addMember(cDiag);
    assertEquals(sizeDiagrams + 1, p.getDiagramList().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());
    p.moveToTrash(package2);
    Model.getPump().flushModelEvents();

    assertEquals(sizeDiagrams, p.getDiagramList().size());
    assertEquals(sizeMembers, p.getMembers().size());
  }
Beispiel #8
0
  /** Test the moveToTrash function for package and content. */
  public void testTrashcanPackageContent() {
    Project p = ProjectManager.getManager().getOpenProjects().get(0);
    // test with a class in a package
    Object package1 = Model.getModelManagementFactory().buildPackage("test1");
    Model.getCoreHelper().setNamespace(package1, p.getRoot());
    Object cls1 = Model.getCoreFactory().buildClass(package1);
    Object cls2 = Model.getCoreFactory().buildClass(package1);
    Object cls3 = Model.getCoreFactory().buildClass(package1);
    Object cls4 = Model.getCoreFactory().buildClass(p.getRoot());
    Object c1 = Model.getFacade().getOwnedElements(p.getRoot());
    assertTrue(c1 instanceof Collection);
    // Let's make it a bit more difficult by setting the target:
    TargetManager.getInstance().setTarget(cls2);

    p.moveToTrash(package1);
    Model.getPump().flushModelEvents();

    // TODO: We should also test that the object
    // have been removed from their namespace.
    // Collection c = Model.getFacade().getOwnedElements(p.getRoot());
    assertTrue("Package not in trash", p.isInTrash(package1));
    assertTrue("Package not deleted", Model.getUmlFactory().isRemoved(package1));
    assertTrue("Class 1 not deleted", Model.getUmlFactory().isRemoved(cls1));
    assertTrue("Class 2 not deleted", Model.getUmlFactory().isRemoved(cls2));
    assertTrue("Class 3 not deleted", Model.getUmlFactory().isRemoved(cls3));
    assertTrue("Class 4 has been deleted", !Model.getUmlFactory().isRemoved(cls4));
  }
Beispiel #9
0
 /** Test the makeUntitledProject() function. */
 public void testMakeUntitledProject() {
   Project p = ProjectManager.getManager().getOpenProjects().get(0);
   assertEquals(2, p.getDiagramList().size());
   assertEquals(
       Translator.localize("misc.untitled-model"), Model.getFacade().getName(p.getModel()));
   // maybe next test is going to change in future
   assertEquals(p.getRoot(), p.getModel());
 }
Beispiel #10
0
  /** Check that there is only one searchPath. See issue 1671. */
  public void testAddSearchPath() {
    Project p = ProjectManager.getManager().getOpenProjects().get(0);
    assertNotNull(p.getSearchPathList());
    assertTrue(p.getSearchPathList().size() == 1);

    p.addSearchPath("PROJECT_DIR");
    assertTrue(p.getSearchPathList().size() == 1);

    p.addSearchPath("foo");
    p.addSearchPath("foo");
    assertTrue(p.getSearchPathList().size() == 2);
  }
Beispiel #11
0
  /** Test deleting a package that contains a Class. The class should be deleted, too. */
  public void testDeletePackageWithClass() {
    Project p = ProjectManager.getManager().getCurrentProject();
    assertEquals(2, p.getDiagrams().size());

    // test with a class and class diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1", null);
    Object aClass = Model.getCoreFactory().buildClass(package1);

    p.moveToTrash(package1);

    assertTrue("Class not in trash", Model.getUmlFactory().isRemoved(aClass));
  }
Beispiel #12
0
  /** Test deleting a class that contains a Class. The class should be deleted, too. */
  public void testDeleteClassWithInnerClass() {
    Project p = ProjectManager.getManager().getCurrentProject();
    assertEquals(2, p.getDiagrams().size());

    // test with a class and an inner class
    Object aClass = Model.getCoreFactory().buildClass("Test");
    Object bClass = Model.getCoreFactory().buildClass(aClass);

    p.moveToTrash(aClass);

    assertTrue("Class not in trash", p.isInTrash(aClass));
    assertTrue("Inner Class not in trash", Model.getUmlFactory().isRemoved(bClass));
  }
Beispiel #13
0
 /*
  * @see junit.framework.TestCase#setUp()
  */
 @Override
 protected void setUp() throws Exception {
   super.setUp();
   InitializeModel.initializeDefault();
   (new InitNotation()).init();
   (new InitNotationUml()).init();
   (new InitNotationJava()).init();
   (new InitDiagramAppearanceUI()).init();
   (new InitActivityDiagram()).init();
   (new InitCollaborationDiagram()).init();
   (new InitDeploymentDiagram()).init();
   (new InitSequenceDiagram()).init();
   (new InitStateDiagram()).init();
   (new InitClassDiagram()).init();
   (new InitUseCaseDiagram()).init();
   (new InitProfileSubsystem()).init();
   ProjectManager.getManager().makeEmptyProject();
 }
Beispiel #14
0
 /** Test the moveToTrash function for class and content. */
 public void testTrashcanClassContent() {
   Project p = ProjectManager.getManager().getCurrentProject();
   // test with a class and an inner class
   Object aClass = Model.getCoreFactory().buildClass("Test", p.getRoot());
   Object cls1 = Model.getCoreFactory().buildClass(aClass);
   Object cls2 = Model.getCoreFactory().buildClass(aClass);
   Object cls3 = Model.getCoreFactory().buildClass(aClass);
   Object typ = Model.getCoreFactory().buildClass(p.getRoot());
   Object oper2a = Model.getCoreFactory().buildOperation(cls2, p.getRoot(), cls3, new ArrayList());
   Object oper2b = Model.getCoreFactory().buildOperation(cls2, p.getRoot(), typ, new ArrayList());
   p.moveToTrash(aClass);
   // Collection c = Model.getFacade().getOwnedElements(p.getRoot());
   assertTrue("Package not in trash", p.isInTrash(aClass));
   assertTrue("Package not deleted", Model.getUmlFactory().isRemoved(aClass));
   assertTrue("Class 1 not deleted", Model.getUmlFactory().isRemoved(cls1));
   assertTrue("Class 2 not deleted", Model.getUmlFactory().isRemoved(cls2));
   assertTrue("Class 3 not deleted", Model.getUmlFactory().isRemoved(cls3));
 }
Beispiel #15
0
  /** Test deleting a package that contains a Class diagram. The diagram should be deleted, too. */
  public void testDeletePackageWithClassDiagram() {
    Project p = ProjectManager.getManager().getCurrentProject();
    assertEquals(2, p.getDiagrams().size());
    assertEquals("untitledModel", Model.getFacade().getName(p.getModel()));
    assertEquals(p.getRoot(), p.getModel());

    int sizeMembers = p.getMembers().size();
    int sizeDiagrams = p.getDiagrams().size();

    // test with a class and class diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1", null);
    Object package2 = Model.getModelManagementFactory().buildPackage("test2", null);

    UMLClassDiagram cDiag = new UMLClassDiagram(package2);
    p.addMember(cDiag);
    assertEquals(sizeDiagrams + 1, p.getDiagrams().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());
    p.moveToTrash(package2);
    assertEquals(sizeDiagrams, p.getDiagrams().size());
    assertEquals(sizeMembers, p.getMembers().size());
  }
Beispiel #16
0
  /** Test the moveToTrash function for class and content. */
  public void testTrashcanClassContent() {
    Project p = ProjectManager.getManager().getOpenProjects().get(0);
    // test with a class and an inner class
    Object aClass = Model.getCoreFactory().buildClass("Test", p.getRoot());
    Object cls1 = Model.getCoreFactory().buildClass(aClass);
    Object cls2 = Model.getCoreFactory().buildClass(aClass);
    Object cls3 = Model.getCoreFactory().buildClass(aClass);
    Object typ = Model.getCoreFactory().buildClass(p.getRoot());
    Object oper2a = Model.getCoreFactory().buildOperation(cls2, cls3);
    assertNotNull(oper2a);
    Object oper2b = Model.getCoreFactory().buildOperation(cls2, typ);
    assertNotNull(oper2b);

    p.moveToTrash(aClass);
    Model.getPump().flushModelEvents();

    assertTrue("Package not in trash", p.isInTrash(aClass));
    assertTrue("Package not deleted", Model.getUmlFactory().isRemoved(aClass));
    assertTrue("Class 1 not deleted", Model.getUmlFactory().isRemoved(cls1));
    assertTrue("Class 2 not deleted", Model.getUmlFactory().isRemoved(cls2));
    assertTrue("Class 3 not deleted", Model.getUmlFactory().isRemoved(cls3));
  }
Beispiel #17
0
  /** Test deleting a statechart diagram directly. */
  public void testDeleteStateDiagram() {
    Project p = ProjectManager.getManager().getCurrentProject();
    assertEquals(2, p.getDiagrams().size());

    int sizeMembers = p.getMembers().size();
    int sizeDiagrams = p.getDiagrams().size();

    // test with a class and class diagram
    Object package1 = Model.getModelManagementFactory().buildPackage("test1", null);
    Object aClass = Model.getCoreFactory().buildClass(package1);

    // try with Statediagram
    Object machine = Model.getStateMachinesFactory().buildStateMachine(aClass);
    UMLStateDiagram d = new UMLStateDiagram(Model.getFacade().getNamespace(machine), machine);
    p.addMember(d);
    assertEquals(sizeDiagrams + 1, p.getDiagrams().size());
    assertEquals(sizeMembers + 1, p.getMembers().size());
    p.moveToTrash(d);
    assertTrue("Statediagram not in trash", p.isInTrash(d));
    assertEquals(sizeDiagrams, p.getDiagrams().size());
    assertEquals(sizeMembers, p.getMembers().size());
  }
 /** Test the makeEmptyProject() function. */
 public void testMakeEmptyProject() {
   Project p = ProjectManager.getManager().makeEmptyProject();
   assertEquals(2, p.getDiagramList().size());
   assertEquals(
       Translator.localize("misc.untitled-model"), Model.getFacade().getName(p.getModel()));
 }
Beispiel #19
0
 /** @see junit.framework.TestCase#setUp() */
 protected void setUp() throws Exception {
   super.setUp();
   ProjectManager.getManager().setCurrentProject(null);
 }