@Test public void test_getName_WithNoSoftwareSystemAndNoEnvironment() { deploymentView = views.createDeploymentView("deployment", "Description"); assertEquals("Deployment", deploymentView.getName()); }
@Test public void test_addAllDeploymentNodes_DoesNothing_WhenThereAreNoTopLevelDeploymentNodes() { deploymentView = views.createDeploymentView("deployment", "Description"); deploymentView.addAllDeploymentNodes(); assertEquals(0, deploymentView.getElements().size()); }
@Test public void test_addRelationship_ThrowsAnException_WhenPassedNull() { try { deploymentView = views.createDeploymentView("key", "Description"); deploymentView.add((Relationship)null); fail(); } catch (IllegalArgumentException iae) { assertEquals("A relationship must be specified.", iae.getMessage()); } }
@Test public void test_addDeploymentNode_ThrowsAnException_WhenPassedNull() { try { deploymentView = views.createDeploymentView("key", "Description"); deploymentView.add((DeploymentNode)null); fail(); } catch (IllegalArgumentException iae) { assertEquals("A deployment node must be specified.", iae.getMessage()); } }
@Test public void test_createDynamicViewForASoftwareSystem_ThrowsAnException_WhenADuplicateKeyIsUsed() { Workspace workspace = new Workspace("Name", "Description"); SoftwareSystem softwareSystem = workspace.getModel().addSoftwareSystem("Name", "Description"); workspace.getViews().createDeploymentView(softwareSystem, "dynamic", "Description"); try { workspace.getViews().createDeploymentView(softwareSystem, "dynamic", "Description"); fail(); } catch (IllegalArgumentException iae) { assertEquals("A view with the key dynamic already exists.", iae.getMessage()); } }
@Test public void test_createDeploymentViewForASoftwareSystem_ThrowsAnException_WhenADuplicateKeyIsUsed() { Workspace workspace = new Workspace("Name", "Description"); SoftwareSystem softwareSystem = workspace.getModel().addSoftwareSystem("Name", "Description"); workspace.getViews().createDeploymentView(softwareSystem, "deployment", "Description"); try { workspace.getViews().createDeploymentView(softwareSystem, "deployment", "Description"); fail(); } catch (IllegalArgumentException iae) { assertEquals("A view with the key deployment already exists.", iae.getMessage()); } }
@Test public void test_createDeploymentView_ThrowsAnException_WhenADuplicateKeyIsUsed() { Workspace workspace = new Workspace("Name", "Description"); SoftwareSystem softwareSystem = workspace.getModel().addSoftwareSystem("Name", "Description"); workspace.getViews().createDeploymentView(softwareSystem, "deployment", "Description"); try { workspace.getViews().createDeploymentView(softwareSystem, "deployment", "Description"); fail(); } catch (IllegalArgumentException iae) { assertEquals("A view with the key deployment already exists.", iae.getMessage()); } }
@Test public void test_createDeploymentViewForASoftwareSystem_ThrowsAnException_WhenANullSoftwareSystemIsSpecified() { try { new Workspace("", "").getViews().createDeploymentView((SoftwareSystem)null, "key", "Description"); fail(); } catch (IllegalArgumentException iae) { assertEquals("A software system must be specified.", iae.getMessage()); } }
@Test public void test_addAllDeploymentNodes_DoesNothing_WhenThereAreTopLevelDeploymentNodesButNoContainerInstances() { deploymentView = views.createDeploymentView("deployment", "Description"); model.addDeploymentNode("Deployment Node", "Description", "Technology"); deploymentView.addAllDeploymentNodes(); assertEquals(0, deploymentView.getElements().size()); }
@Test public void test_createDeploymentView_ThrowsAnException_WhenANullKeyIsSpecified() { try { Workspace workspace = new Workspace("Name", "Description"); workspace.getViews().createDeploymentView(null, "Description"); fail(); } catch (IllegalArgumentException iae) { assertEquals("A key must be specified.", iae.getMessage()); } }
@Test public void test_createDeploymentView_ThrowsAnException_WhenAnEmptyKeyIsSpecified() { try { Workspace workspace = new Workspace("Name", "Description"); workspace.getViews().createDeploymentView(" ", "Description"); fail(); } catch (IllegalArgumentException iae) { assertEquals("A key must be specified.", iae.getMessage()); } }
@Test public void test_getName_WithASoftwareSystemAndNoEnvironment() { SoftwareSystem softwareSystem = model.addSoftwareSystem("Software System", ""); deploymentView = views.createDeploymentView(softwareSystem, "deployment", "Description"); assertEquals("Software System - Deployment", deploymentView.getName()); }
@Test public void test_getName_WithNoSoftwareSystemAndAnEnvironment() { deploymentView = views.createDeploymentView("deployment", "Description"); deploymentView.setEnvironment("Live"); assertEquals("Deployment - Live", deploymentView.getName()); }
@Test public void test_getName_WithASoftwareSystemAndAnEnvironment() { SoftwareSystem softwareSystem = model.addSoftwareSystem("Software System", ""); deploymentView = views.createDeploymentView(softwareSystem, "deployment", "Description"); deploymentView.setEnvironment("Live"); assertEquals("Software System - Deployment - Live", deploymentView.getName()); }
@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_createDeploymentViewForASoftwareSystem_ThrowsAnException_WhenANullKeyIsSpecified() { try { Workspace workspace = new Workspace("Name", "Description"); SoftwareSystem softwareSystem = workspace.getModel().addSoftwareSystem("Software System", "Description"); workspace.getViews().createDeploymentView(softwareSystem, null, "Description"); fail(); } catch (IllegalArgumentException iae) { assertEquals("A key must be specified.", iae.getMessage()); } }
@Test public void test_createDeploymentViewForASoftwareSystem_ThrowsAnException_WhenAnEmptyKeyIsSpecified() { try { Workspace workspace = new Workspace("Name", "Description"); SoftwareSystem softwareSystem = workspace.getModel().addSoftwareSystem("Software System", "Description"); workspace.getViews().createDeploymentView(softwareSystem, " ", "Description"); fail(); } catch (IllegalArgumentException iae) { assertEquals("A key must be specified.", iae.getMessage()); } }
@Test public void test_addAllDeploymentNodes_AddsDeploymentNodesAndContainerInstances_WhenThereAreTopLevelDeploymentNodesWithContainerInstances() { SoftwareSystem softwareSystem = model.addSoftwareSystem("Software System", ""); Container container = softwareSystem.addContainer("Container", "Description", "Technology"); DeploymentNode deploymentNode = model.addDeploymentNode("Deployment Node", "Description", "Technology"); ContainerInstance containerInstance = deploymentNode.add(container); deploymentView = views.createDeploymentView(softwareSystem, "deployment", "Description"); deploymentView.addAllDeploymentNodes(); assertEquals(2, deploymentView.getElements().size()); assertTrue(deploymentView.getElements().contains(new ElementView(deploymentNode))); assertTrue(deploymentView.getElements().contains(new ElementView(containerInstance))); }
@Test public void test_createDeploymentView() { Workspace workspace = new Workspace("Name", "Description"); DeploymentView deploymentView = workspace.getViews().createDeploymentView("key", "Description"); assertEquals("key", deploymentView.getKey()); assertEquals("Description", deploymentView.getDescription()); assertNull(deploymentView.getSoftwareSystem()); }
@Test public void test_createDeploymentViewForSoftwareSystem() { Workspace workspace = new Workspace("Name", "Description"); SoftwareSystem softwareSystem = workspace.getModel().addSoftwareSystem("Name", "Description"); DeploymentView deploymentView = workspace.getViews().createDeploymentView(softwareSystem, "key", "Description"); assertEquals("key", deploymentView.getKey()); assertEquals("Description", deploymentView.getDescription()); assertSame(softwareSystem, deploymentView.getSoftwareSystem()); }