@Test public void testQueryPK_one() { IPResourceService resourceService = getCommonServicesContext().getResourceService(); Optional<JunitResource> one = resourceService.resourceFindByPk(new JunitResource("www.example.com", JunitResourceEnum.A, 2)); Assert.assertTrue(one.isPresent()); Set<String> tags = resourceService.tagFindAllByResource(one.get()); Assert.assertEquals(1, tags.size()); Assert.assertTrue(tags.contains("asite")); }
@Test public void testQueryPK_one() { IPResourceService resourceService = getCommonServicesContext().getResourceService(); Optional<JunitResource> one = resourceService.resourceFindByPk(new JunitResource("www.example.com", JunitResourceEnum.A, 2)); Assert.assertTrue(one.isPresent()); Set<String> tags = resourceService.tagFindAllByResource(one.get()); Assert.assertEquals(1, tags.size()); Assert.assertTrue(tags.contains("asite")); }
protected void assertState(String resourceName) { ResourcesState resourcesState = new ResourcesState(); resourcesState.setResources(getInternalServicesContext().getInternalIPResourceService().resourceFindAll().stream() // .map(resource -> { ResourceState resourceState = new ResourceState(getResourceDetails(resource)); // Links List<ResourcesStateLink> links = getCommonServicesContext().getResourceService().linkFindAllByFromResource(resource).stream() // .map(link -> new ResourcesStateLink(link.getA(), getResourceDetails(link.getB()))) // .collect(Collectors.toList()); resourceState.setLinks(links); // Tags resourceState.setTags(getCommonServicesContext().getResourceService().tagFindAllByResource(resource).stream().sorted().collect(Collectors.toList())); return resourceState; }) // .collect(Collectors.toList())); resourcesState.sort(); AssertTools.assertJsonComparison(resourceName, AbstractIPResourceServiceTest.class, resourcesState); }
@Test public void testChanges_reduntantLinksAndTags() { ChangesContext changes = new ChangesContext(); JunitResource r1 = new JunitResource("reduntant_1"); JunitResource r2 = new JunitResource("reduntant_2"); changes.getResourcesToAdd().add(r1); changes.getResourcesToAdd().add(r2); changes.getLinksToAdd().add(new Tuple3<>(r1, "link1", r2)); changes.getLinksToAdd().add(new Tuple3<>(r1, "link1", r2)); changes.getLinksToAdd().add(new Tuple3<>(r1, "link2", r2)); changes.getTagsToAdd().add(new Tuple2<>(r1, "tag1")); changes.getTagsToAdd().add(new Tuple2<>(r1, "tag1")); changes.getTagsToAdd().add(new Tuple2<>(r1, "tag2")); getInternalServicesContext().getInternalChangeService().changesExecute(changes); // Check IPResourceService resourceService = getCommonServicesContext().getResourceService(); r1 = resourceService.resourceFindByPk(r1).get(); r2 = resourceService.resourceFindByPk(r2).get(); Assert.assertEquals(Arrays.asList("link1", "link2"), resourceService.linkFindAllByFromResource(r1).stream().map(it -> it.getA()).sorted().collect(Collectors.toList())); Assert.assertEquals(Arrays.asList("tag1", "tag2"), resourceService.tagFindAllByResource(r1).stream().sorted().collect(Collectors.toList())); }
@Test public void testChanges_linksAndTagsAreNotKeptWhenDeleted() { // Create ChangesContext changes = new ChangesContext(); JunitResource r1 = new JunitResource("1"); JunitResource r2 = new JunitResource("2"); changes.getResourcesToAdd().add(r1); changes.getResourcesToAdd().add(r2); changes.getLinksToAdd().add(new Tuple3<>(r1, "link1", r2)); changes.getTagsToAdd().add(new Tuple2<>(r1, "tag1")); getInternalServicesContext().getInternalChangeService().changesExecute(changes); IPResourceService resourceService = getCommonServicesContext().getResourceService(); r1 = resourceService.resourceFindByPk(r1).get(); r2 = resourceService.resourceFindByPk(r2).get(); Assert.assertEquals(Arrays.asList("link1"), resourceService.linkFindAllByFromResource(r1).stream().map(it -> it.getA()).sorted().collect(Collectors.toList())); Assert.assertEquals(Arrays.asList("tag1"), resourceService.tagFindAllByResource(r1).stream().sorted().collect(Collectors.toList())); // Delete it changes.getResourcesToDelete().add(resourceService.resourceFindByPk(r1).get().getInternalId()); getInternalServicesContext().getInternalChangeService().changesExecute(changes); Assert.assertEquals(0, resourceService.linkFindAllByFromResource(r1).size()); Assert.assertEquals(0, resourceService.tagFindAllByResource(r1).size()); // Recreate it changes.getResourcesToAdd().add(r1); getInternalServicesContext().getInternalChangeService().changesExecute(changes); // Check no links and tags Assert.assertEquals(0, resourceService.linkFindAllByFromResource(r1).size()); Assert.assertEquals(0, resourceService.tagFindAllByResource(r1).size()); }
@Test public void testChanges_reduntantLinksAndTags() { ChangesContext changes = new ChangesContext(getCommonServicesContext().getResourceService()); JunitResource r1 = new JunitResource("reduntant_1"); JunitResource r2 = new JunitResource("reduntant_2"); changes.resourceAdd(r1); changes.resourceAdd(r2); changes.linkAdd(r1, "link1", r2); changes.linkAdd(r1, "link1", r2); changes.linkAdd(r1, "link2", r2); changes.tagAdd(r1, "tag1"); changes.tagAdd(r1, "tag1"); changes.tagAdd(r1, "tag2"); getInternalServicesContext().getInternalChangeService().changesExecute(changes); // Check IPResourceService resourceService = getCommonServicesContext().getResourceService(); r1 = resourceService.resourceFindByPk(r1).get(); r2 = resourceService.resourceFindByPk(r2).get(); Assert.assertEquals(Arrays.asList("link1", "link2"), resourceService.linkFindAllByFromResource(r1).stream().map(it -> it.getA()).sorted().collect(Collectors.toList())); Assert.assertEquals(Arrays.asList("tag1", "tag2"), resourceService.tagFindAllByResource(r1).stream().sorted().collect(Collectors.toList())); }
public static void assertState(CommonServicesContext commonServicesContext, InternalServicesContext internalServicesContext, String resourceName, Class<?> resourceContext, boolean withContent) { ResourcesState resourcesState = new ResourcesState(); resourcesState.setResources(internalServicesContext.getInternalIPResourceService().resourceFindAll().stream() // .map(resource -> { ResourceState resourceState = new ResourceState(getResourceDetails(resource)); // With content if (withContent) { // Remove some values IPResource cloned = JsonTools.clone(resource); cloned.setInternalId(null); resourceState.setContent(cloned); } // Links List<ResourcesStateLink> links = commonServicesContext.getResourceService().linkFindAllByFromResource(resource).stream() // .map(link -> new ResourcesStateLink(link.getA(), getResourceDetails(link.getB()))) // .collect(Collectors.toList()); resourceState.setLinks(links); // Tags resourceState.setTags(commonServicesContext.getResourceService().tagFindAllByResource(resource).stream().sorted().collect(Collectors.toList())); return resourceState; }) // .collect(Collectors.toList())); resourcesState.sort(); String actualJson = JsonTools.prettyPrintWithoutNulls(resourcesState); actualJson = actualJson.replaceAll("\\\\n", "\n"); actualJson = actualJson.replaceAll("\\\\t", "\t"); String expectedJson = ResourceTools.getResourceAsString(resourceName, resourceContext); AssertTools.assertIgnoreLineFeed(expectedJson, actualJson); }
@Test public void testChanges_linksAndTagsAreNotKeptWhenDeleted() { // Create ChangesContext changes = new ChangesContext(getCommonServicesContext().getResourceService()); JunitResource r1 = new JunitResource("1"); JunitResource r2 = new JunitResource("2"); changes.resourceAdd(r1); changes.resourceAdd(r2); changes.linkAdd(r1, "link1", r2); changes.tagAdd(r1, "tag1"); getInternalServicesContext().getInternalChangeService().changesExecute(changes); IPResourceService resourceService = getCommonServicesContext().getResourceService(); r1 = resourceService.resourceFindByPk(r1).get(); r2 = resourceService.resourceFindByPk(r2).get(); Assert.assertEquals(Arrays.asList("link1"), resourceService.linkFindAllByFromResource(r1).stream().map(it -> it.getA()).sorted().collect(Collectors.toList())); Assert.assertEquals(Arrays.asList("tag1"), resourceService.tagFindAllByResource(r1).stream().sorted().collect(Collectors.toList())); // Delete it changes.resourceDelete(resourceService.resourceFindByPk(r1).get().getInternalId()); getInternalServicesContext().getInternalChangeService().changesExecute(changes); Assert.assertEquals(0, resourceService.linkFindAllByFromResource(r1).size()); Assert.assertEquals(0, resourceService.tagFindAllByResource(r1).size()); // Recreate it changes.resourceAdd(r1); getInternalServicesContext().getInternalChangeService().changesExecute(changes); // Check no links and tags Assert.assertEquals(0, resourceService.linkFindAllByFromResource(r1).size()); Assert.assertEquals(0, resourceService.tagFindAllByResource(r1).size()); }
public static ResourcesDump dumpExport(CommonServicesContext commonServicesContext, InternalServicesContext internalServicesContext) { ResourcesDump dump = new ResourcesDump(); IPResourceService resourceService = commonServicesContext.getResourceService(); for (IPResource resource : internalServicesContext.getInternalIPResourceService().resourceFindAll()) { String resourceType = resourceService.getResourceDefinition(resource).getResourceType(); String resourceTypeAndName = resourceType + "/" + resource.getResourceName(); // Export resource dump.getResources().add(new ResourcesDumpResource(resourceType, resource)); // Export tags resourceService.tagFindAllByResource(resource).stream() // .forEach(it -> dump.getTags().add(new ResourcesDumpTag(resourceTypeAndName, it))); // Export links resourceService.linkFindAllByFromResource(resource).stream() // .map(it -> { String toResourceType = resourceService.getResourceDefinition(it.getB()).getResourceType(); String toResourceTypeAndName = toResourceType + "/" + it.getB().getResourceName(); return new ResourcesDumpLink(resourceTypeAndName, it.getA(), toResourceTypeAndName); }) // .forEach(it -> dump.getLinks().add(it)); } dump.sort(); return dump; }
assertResourceExists(true, new DnsEntry(machineName2, DnsEntryType.A, m2Ip1), DnsEntry.class); Set<String> tags = resourceService.tagFindAllByResource(m2); Assert.assertEquals(1, tags.size()); Assert.assertEquals("extraTag", tags.iterator().next());
Assert.assertEquals(1, resources.size()); resource = resources.get(0); tags = resourceService.tagFindAllByResource(resource); assertSet(tags, "tag1", "asite", "changed"); Assert.assertEquals(1, resources.size()); resource = resources.get(0); tags = resourceService.tagFindAllByResource(resource); assertSet(tags, "asite", "changed");
Assert.assertEquals(domain2Id_2, domain2Id_3); Set<String> tags = resourceService.tagFindAllByResource(m2); Assert.assertEquals(1, tags.size()); Assert.assertEquals("extraTag", tags.iterator().next());
Assert.assertEquals(1, resources.size()); resource = resources.get(0); tags = resourceService.tagFindAllByResource(resource); assertSet(tags, "tag1", "asite", "changed"); Assert.assertEquals(1, resources.size()); resource = resources.get(0); tags = resourceService.tagFindAllByResource(resource); assertSet(tags, "asite", "changed");