use of com.archimatetool.testingtools.ArchimateTestModel in project archi by archimatetool.
the class TreeModelViewerDragDropHandlerTests method runOnceBeforeEachTest.
@Before
public void runOnceBeforeEachTest() {
tm = new ArchimateTestModel();
// We need a real model and Command Stack for some operations
model = tm.createNewModel();
dragHandler = new TreeModelViewerDragDropHandler(treeViewer);
}
use of com.archimatetool.testingtools.ArchimateTestModel in project archi by archimatetool.
the class DeleteCommandHandlerTests method testDelete_More_Than_One_Model.
@Test
public void testDelete_More_Than_One_Model() throws IOException {
// Use another instance of the same model
ArchimateTestModel tm2 = new ArchimateTestModel(TEST_MODEL_FILE);
IArchimateModel model2 = tm2.loadModelWithCommandStack();
// Elements
String[] elementIDs = new String[] { "31a27739", "8ab84e91", "46d0abd5", "8ecabfc2" };
// Select them from both models
List<IArchimateElement> elements1 = new ArrayList<IArchimateElement>();
for (String id : elementIDs) {
elements1.add((IArchimateElement) ArchimateModelUtils.getObjectByID(model, id));
}
List<IArchimateElement> elements2 = new ArrayList<IArchimateElement>();
for (String id : elementIDs) {
elements2.add((IArchimateElement) ArchimateModelUtils.getObjectByID(model2, id));
}
List<IArchimateElement> allElements = new ArrayList<IArchimateElement>(elements1);
allElements.addAll(elements2);
assertEquals(8, allElements.size());
// Zap
DeleteCommandHandler commandHandler = new DeleteCommandHandler(treeModelViewer, allElements.toArray());
commandHandler.delete();
// Test that they are all gone in the models and in the referenced diagrams
for (IArchimateElement element : elements1) {
assertFalse(DiagramModelUtils.isArchimateConceptReferencedInDiagrams(element));
assertNull(ArchimateModelUtils.getObjectByID(model, element.getId()));
}
for (IArchimateElement element : elements2) {
assertFalse(DiagramModelUtils.isArchimateConceptReferencedInDiagrams(element));
assertNull(ArchimateModelUtils.getObjectByID(model2, element.getId()));
}
// And just for good measure, we'll undo it...once for each model
CommandStack commandStack1 = (CommandStack) model.getAdapter(CommandStack.class);
commandStack1.undo();
CommandStack commandStack2 = (CommandStack) model2.getAdapter(CommandStack.class);
commandStack2.undo();
// And find them all back again!
for (IArchimateElement element : elements1) {
assertTrue(DiagramModelUtils.isArchimateConceptReferencedInDiagrams(element));
assertNotNull(ArchimateModelUtils.getObjectByID(model, element.getId()));
}
for (IArchimateElement element : elements2) {
assertTrue(DiagramModelUtils.isArchimateConceptReferencedInDiagrams(element));
assertNotNull(ArchimateModelUtils.getObjectByID(model2, element.getId()));
}
}
use of com.archimatetool.testingtools.ArchimateTestModel in project archi by archimatetool.
the class DuplicateCommandHandlerTests method testDuplicateDiagramModel.
@Test
public void testDuplicateDiagramModel() {
ArchimateTestModel tm = new ArchimateTestModel();
IArchimateModel model = tm.createNewModel();
IDiagramModel dm = model.getDefaultDiagramModel();
IArchimateElement actor = IArchimateFactory.eINSTANCE.createBusinessActor();
IDiagramModelArchimateObject dmo1 = tm.createDiagramModelArchimateObjectAndAddToModel(actor);
dmo1.setName("dm");
dm.getChildren().add(dmo1);
IArchimateElement role = IArchimateFactory.eINSTANCE.createBusinessRole();
IDiagramModelArchimateObject dmo2 = tm.createDiagramModelArchimateObjectAndAddToModel(role);
dm.getChildren().add(dmo2);
IArchimateRelationship relation = IArchimateFactory.eINSTANCE.createAssignmentRelationship();
relation.setSource(actor);
relation.setTarget(role);
IDiagramModelArchimateConnection dmc1 = tm.createDiagramModelArchimateConnectionAndAddToModel(relation);
dmc1.connect(dmo1, dmo2);
DuplicateCommandHandler handler = new DuplicateCommandHandler(new Object[] { dm });
handler.duplicate();
assertEquals(2, model.getDiagramModels().size());
IDiagramModel dmCopy = model.getDiagramModels().get(1);
assertNotSame(dm, dmCopy);
assertEquals(dm.getName() + " (copy)", dmCopy.getName());
EList<IDiagramModelObject> children = dmCopy.getChildren();
assertEquals(2, children.size());
IDiagramModelArchimateObject dmo1Copy = (IDiagramModelArchimateObject) children.get(0);
IDiagramModelArchimateObject dmo2Copy = (IDiagramModelArchimateObject) children.get(1);
assertNotSame(dmo1, dmo1Copy);
assertNotSame(dmo2, dmo2Copy);
assertSame(actor, dmo1Copy.getArchimateConcept());
assertSame(role, dmo2Copy.getArchimateConcept());
EList<IDiagramModelConnection> connections = dmo1Copy.getSourceConnections();
assertEquals(1, connections.size());
IDiagramModelArchimateConnection dmc1Copy = (IDiagramModelArchimateConnection) connections.get(0);
assertNotSame(dmc1, dmc1Copy);
assertSame(relation, dmc1Copy.getArchimateConcept());
}
use of com.archimatetool.testingtools.ArchimateTestModel in project archi by archimatetool.
the class DiagramEditorFindReplaceProviderTests method runOnceBeforeAllTests.
@BeforeClass
public static void runOnceBeforeAllTests() throws IOException {
tm = new ArchimateTestModel(new File(TestSupport.getTestDataFolder(), "models/testFindReplace.archimate"));
model = tm.loadModelWithCommandStack();
dm = (IArchimateDiagramModel) ArchimateModelUtils.getObjectByID(model, "6a346079");
editor = new ArchimateTestEditor();
editor.setDiagramModel(dm);
}
use of com.archimatetool.testingtools.ArchimateTestModel in project archi by archimatetool.
the class CopySnapshotTests method loadTestModel1.
// ---------------------------------------------------------------------------------------------
// Support
// ---------------------------------------------------------------------------------------------
private void loadTestModel1() throws IOException {
tm = new ArchimateTestModel(TestData.TEST_MODEL_FILE_ARCHISURANCE);
model = tm.loadModelWithCommandStack();
sourceDiagramModel = model.getDiagramModels().get(1);
targetDiagramModel = tm.addNewArchimateDiagramModel();
}
Aggregations