void copyLayoutInformationFrom(ElementView source) { if (source != null) { setX(source.getX()); setY(source.getY()); } }
@Test public void test_copyLayoutInformationFrom_DoesNotDoAnythingIfThereIsNoDeploymentViewToCopyInformationFrom() { Workspace workspace1 = createWorkspace(); Workspace workspace2 = createWorkspace(); DeploymentNode deploymentNode2 = workspace2.getModel().getDeploymentNodeWithName("Deployment Node"); DeploymentView view2 = workspace2.getViews().createDeploymentView("key", "Description"); view2.add(deploymentNode2); workspace2.getViews().copyLayoutInformationFrom(workspace1.getViews()); assertEquals(0, view2.getElements().stream().filter(ev -> ev.getElement() instanceof ContainerInstance).findFirst().get().getX()); // default assertEquals(0, view2.getElements().stream().filter(ev -> ev.getElement() instanceof ContainerInstance).findFirst().get().getY()); // default assertNull(view2.getPaperSize()); // default }
@Test public void test_copyLayoutInformationFrom_WhenTheDeploymentViewKeysMatch() { Workspace workspace1 = createWorkspace(); DeploymentNode deploymentNode1 = workspace1.getModel().getDeploymentNodeWithName("Deployment Node"); DeploymentView view1 = workspace1.getViews().createDeploymentView("key", "Description"); view1.add(deploymentNode1); view1.getElements().stream().filter(ev -> ev.getElement() instanceof ContainerInstance).findFirst().get().setX(100); view1.getElements().stream().filter(ev -> ev.getElement() instanceof ContainerInstance).findFirst().get().setY(200); view1.setPaperSize(PaperSize.A3_Landscape); Workspace workspace2 = createWorkspace(); DeploymentNode deploymentNode2 = workspace2.getModel().getDeploymentNodeWithName("Deployment Node"); DeploymentView view2 = workspace2.getViews().createDeploymentView("key", "Description"); view2.add(deploymentNode2); workspace2.getViews().copyLayoutInformationFrom(workspace1.getViews()); assertEquals(100, view2.getElements().stream().filter(ev -> ev.getElement() instanceof ContainerInstance).findFirst().get().getX()); assertEquals(200, view2.getElements().stream().filter(ev -> ev.getElement() instanceof ContainerInstance).findFirst().get().getY()); assertEquals(PaperSize.A3_Landscape, view2.getPaperSize()); }
@Test public void test_copyLayoutInformationFrom_CopiesXAndY_WhenANonNullElementViewIsPassed() { Element element = model.addSoftwareSystem(Location.External, "SystemA", ""); ElementView elementView1 = new ElementView(element); assertEquals(0, elementView1.getX()); assertEquals(0, elementView1.getY()); ElementView elementView2 = new ElementView(element); elementView2.setX(123); elementView2.setY(456); elementView1.copyLayoutInformationFrom(elementView2); assertEquals(123, elementView1.getX()); assertEquals(456, elementView1.getY()); }
view2.add(person2); assertEquals(0, view2.getElementView(softwareSystem2B).getX()); assertEquals(0, view2.getElementView(softwareSystem2B).getY()); assertEquals(0, view2.getElementView(softwareSystem2B).getX()); assertEquals(0, view2.getElementView(softwareSystem2B).getY()); assertEquals(0, view2.getElementView(person2).getX()); assertEquals(0, view2.getElementView(person2).getY()); assertTrue(view2.getRelationshipView(personUsesSoftwareSystem2).getVertices().isEmpty()); assertEquals(0, view2.getElementView(softwareSystem2A).getY()); assertEquals(123, view2.getElementView(softwareSystem2B).getX()); assertEquals(321, view2.getElementView(softwareSystem2B).getY()); assertEquals(456, view2.getElementView(person2).getX()); assertEquals(654, view2.getElementView(person2).getY()); Vertex vertex = view2.getRelationshipView(personUsesSoftwareSystem2).getVertices().iterator().next(); assertEquals(123, vertex.getX());