@Before public void before() throws Exception { super.before(); authorizations = getGraph().createAuthorizations(); user = getUserRepository().findOrAddUser("junit", "Junit", "junit@visallo.com", "password"); Workspace workspace = getWorkspaceRepository().add(workspaceId, "Junit Workspace", user); if (getPrivilegeRepository().hasPrivilege(user, Privilege.ADMIN)) { fail("User shouldn't have admin"); } adminUser = getUserRepository().findOrAddUser("junit-admin", "Junit Admin", "junit-admin@visallo.com", "password"); Set<String> privileges = Privilege.ALL_BUILT_IN.stream().map(Privilege::getName).collect(Collectors.toSet()); setPrivileges(adminUser, privileges); getWorkspaceRepository().updateUserOnWorkspace(workspace, adminUser.getUserId(), WorkspaceAccess.WRITE, systemUser); }
@Test public void testExceptionDeletingSandboxedRelationshipsWithEdges() throws Exception { createSampleOntology(); VisibilityJson json = VisibilityJson.updateVisibilitySourceAndAddWorkspaceId(new VisibilityJson(), "", workspaceId); Visibility visibility = getVisibilityTranslator().toVisibility(json).getVisibility(); Vertex source = getGraph().prepareVertex(visibility).save(authorizations); Vertex target = getGraph().prepareVertex(visibility).save(authorizations); EdgeBuilder edgeBuilder = getGraph().prepareEdge(source, target, SANDBOX_RELATIONSHIP_IRI, visibility); edgeBuilder.setProperty(SANDBOX_PROPERTY_IRI, "a value", visibility); edgeBuilder.save(authorizations); thrown.expect(VisalloException.class); thrown.expectMessage("Unable to delete relationship that have edges using it"); getOntologyRepository().deleteRelationship(SANDBOX_RELATIONSHIP_IRI, adminUser, workspaceId); }
@Test public void testExceptionDeletingSandboxedPropertiesWithEdges() throws Exception { createSampleOntology(); VisibilityJson json = VisibilityJson.updateVisibilitySourceAndAddWorkspaceId(new VisibilityJson(), "", workspaceId); Visibility visibility = getVisibilityTranslator().toVisibility(json).getVisibility(); Vertex source = getGraph().prepareVertex(visibility).save(authorizations); Vertex target = getGraph().prepareVertex(visibility).save(authorizations); EdgeBuilder edgeBuilder = getGraph().prepareEdge(source, target, SANDBOX_RELATIONSHIP_IRI, visibility); edgeBuilder.setProperty(SANDBOX_PROPERTY_IRI, "a value", visibility); edgeBuilder.save(authorizations); thrown.expect(VisalloException.class); thrown.expectMessage("Unable to delete property that have elements using it"); getOntologyRepository().deleteProperty(SANDBOX_PROPERTY_IRI, adminUser, workspaceId); }
@Test public void testExceptionDeletingSandboxedConceptsWithVertices() throws Exception { createSampleOntology(); Concept concept = getOntologyRepository().getConceptByIRI(SANDBOX_CONCEPT_IRI, workspaceId); assertTrue("Concept exists", concept != null && concept.getIRI().equals(SANDBOX_CONCEPT_IRI)); VisibilityJson json = VisibilityJson.updateVisibilitySourceAndAddWorkspaceId(new VisibilityJson(), "", workspaceId); Visibility visibility = getVisibilityTranslator().toVisibility(json).getVisibility(); VertexBuilder vb = getGraph().prepareVertex(visibility); vb.setProperty(VisalloProperties.CONCEPT_TYPE.getPropertyName(), SANDBOX_CONCEPT_IRI, visibility); vb.save(authorizations); thrown.expect(VisalloException.class); thrown.expectMessage("Unable to delete concept that have vertices assigned to it"); getOntologyRepository().deleteConcept(SANDBOX_CONCEPT_IRI, adminUser, workspaceId); }
@Test public void testExceptionDeletingSandboxedPropertiesWithVertices() throws Exception { createSampleOntology(); VisibilityJson json = VisibilityJson.updateVisibilitySourceAndAddWorkspaceId(new VisibilityJson(), "", workspaceId); Visibility visibility = getVisibilityTranslator().toVisibility(json).getVisibility(); VertexBuilder vb = getGraph().prepareVertex(visibility); vb.setProperty(SANDBOX_PROPERTY_IRI, "a value", visibility); vb.save(authorizations); thrown.expect(VisalloException.class); thrown.expectMessage("Unable to delete property that have elements using it"); getOntologyRepository().deleteProperty(SANDBOX_PROPERTY_IRI, adminUser, workspaceId); }