public void call() throws RepositoryException { testRootNode.addNode(nodeName1, testNodeType).setProperty(propertyName1, "test"); testRootNode.getSession().save(); } }, Event.PROPERTY_ADDED);
protected void version(Node node, Context context) throws RepositoryException { if (isVersionManually()) { String comment = (String) context.get("comment"); if (comment == null) { comment = "versions.comment.deleted"; } node.setProperty(NodeTypes.Deleted.COMMENT, comment); node.getSession().save(); versionManager.addVersion(node, getRule()); } }
private void setupProperties(String prop1Name, String prop1Val, String prop2Name, String prop2Val) throws Exception { Session session = MgnlContext.getJCRSession(RepositoryConstants.CONFIG); parent = session.getRootNode().addNode("parent"); parent.setProperty(prop1Name, prop1Val); parent.setProperty(prop2Name, prop2Val); child = parent.addNode("child"); child.setProperty(prop1Name, prop1Val); child.setProperty(prop2Name, prop2Val); session.save(); }
@Test(expected = AccessDeniedException.class) public void testExecuteIsDeniedIfUserIsNull() throws Exception { // GIVEN when(ctx.get(MarkNodeAsDeletedCommand.DELETED_NODE_PROP_NAME)).thenReturn("nodeToDelete"); Node nodeToDelete = MgnlContext.getJCRSession("website").getRootNode().addNode("nodeToDelete", NodeTypes.Folder.NAME); nodeToDelete.getSession().save(); doReturn(null).when(systemContext).getUser(); // WHEN cmd.execute(ctx); // THEN - AccessDeniedException }
@Test public void testWorkspaceReturnsLogicalName4() throws RepositoryException { // GIVEN Node root = MgnlContext.getJCRSession("magnolia-mgnlSystem").getRootNode(); root.addNode("test", NodeTypes.ContentNode.NAME).setProperty("testProp", "testVal"); root.getSession().save(); // WHEN String name = root.getNode("test").getProperty("testProp").getParent().getSession().getWorkspace().getName(); // THEN assertTrue(name.equals("magnolia-mgnlSystem")); }
@Override protected void tearDown() throws Exception { for (Node c : JcrUtils.getChildNodes(testRootNode)) { testRootNode.getSession().removeItem(c.getPath()); } testRootNode.getSession().save(); super.tearDown(); }
private void prepareGroupData() throws Exception { String peopleGroup = "people"; String employeesGroup = "employees"; String developersGroup = "developers"; // Create a group (developers) which has an assigned group (employees) which again has an assigned group (people) final Node developersNode = session.getRootNode().addNode(developersGroup, NodeTypes.Group.NAME); final Node employeesNode = session.getRootNode().addNode(employeesGroup, NodeTypes.Group.NAME); final Node peopleNode = session.getRootNode().addNode(peopleGroup, NodeTypes.Group.NAME); developersNode.addNode(RepositoryBackedSecurityManager.GROUPS_NODE_NAME, NodeTypes.ContentNode.NAME).setProperty("0", employeesNode.getIdentifier()); employeesNode.addNode(RepositoryBackedSecurityManager.GROUPS_NODE_NAME, NodeTypes.ContentNode.NAME).setProperty("0", peopleNode.getIdentifier()); session.save(); }
@Test(expected = IllegalArgumentException.class) public void testNodeMultipleWrap() throws RepositoryException { // GIVEN Node root = MgnlContext.getJCRSession("magnolia-mgnlSystem").getRootNode(); Node node = root.addNode("test", NodeTypes.ContentNode.NAME); root.getSession().save(); // WHEN new MgnlLogicalWorkspaceNameMappingWorkspaceDecorator("magnolia-mgnlSystem", "mgnlSystem").wrapNode(node); // THEN // exception is thrown }
@Test public void testWorkspaceReturnsLogicalName3() throws RepositoryException { // GIVEN Node root = MgnlContext.getJCRSession("magnolia-mgnlSystem").getRootNode(); root.addNode("test", NodeTypes.ContentNode.NAME).setProperty("testProp", "testVal"); root.getSession().save(); // WHEN String name = root.getNode("test").getProperty("testProp").getSession().getWorkspace().getName(); // THEN assertTrue(name.equals("magnolia-mgnlSystem")); }
public void call() throws RepositoryException { testRootNode.addNode(nodeName1, testNodeType).setProperty(propertyName1, "test"); testRootNode.getSession().save(); } }, Event.PROPERTY_ADDED);
@Override protected void tearDown() throws Exception { for (Node c : JcrUtils.getChildNodes(testRootNode)) { testRootNode.getSession().removeItem(c.getPath()); } superuser.save(); super.tearDown(); }
@Test public void sequenceCreateModifyDelete() throws RepositoryException { Node node = session.getRootNode().addNode("new-site"); node.setProperty("title", "newTitle"); node.remove(); session.save(); assertEquals(0, audit.records.size()); }
@Test(expected = AccessDeniedException.class) public void testExecuteChecksForUserPermissions() throws Exception { // GIVEN doReturn(false).when(ami).isGranted(anyString(), anyLong()); when(ctx.get(MarkNodeAsDeletedCommand.DELETED_NODE_PROP_NAME)).thenReturn("nodeToDelete"); Node nodeToDelete = MgnlContext.getJCRSession("website").getRootNode().addNode("nodeToDelete", NodeTypes.Folder.NAME); nodeToDelete.getSession().save(); // WHEN cmd.execute(ctx); // THEN - AccessDeniedException }
/** * Creates two nodes with name {@link #nodeName1} and {@link #nodeName2} * with nodetype {@link #testNodeType}. The node type must allow a String * property with name {@link #propertyName1} which is fulltext indexed. */ protected void setUpFullTextTest() throws RepositoryException { Node node = testRootNode.addNode(nodeName1, testNodeType); node.setProperty(propertyName1, "The quick brown fox jumps over the lazy dog."); node = testRootNode.addNode(nodeName2, testNodeType); node.setProperty(propertyName1, "The quick brown cat jumps over the lazy dog."); testRootNode.getSession().save(); }
@Test public void testPathProperty() throws Exception { Session session = getAdminSession(); Node testRootNode = session.getRootNode().addNode("testRoot"); try { testRootNode.setProperty("testPathProperty", "/foobar:test", PropertyType.PATH); session.save(); fail("adding a path property without registered namespace must fail."); } catch (RepositoryException e) { // ok. } }
@Test public void testIsNotNodeTypeForNodeCheckFrozenTypeIfWereNotLookingForFrozenNodes() throws Exception { // GIVEN final Node node = MgnlContext.getJCRSession(RepositoryConstants.WEBSITE).getRootNode().addNode("testPage", NodeTypes.Content.NAME); node.addMixin(JcrConstants.MIX_VERSIONABLE); node.getSession().save(); final Node version = versionManager.addVersion(node, new Rule(NodeTypes.ContentNode.NAME, ",")).getFrozenNode(); // WHEN-THEN assertFalse(NodeUtil.isNodeType(version, NodeTypes.ContentNode.NAME)); }
/** * Tests if the path of the created node is correct. */ public void testPath() throws RepositoryException { Node n1 = testRootNode.addNode(nodeName1, testNodeType); testRootNode.getSession().save(); String expected = testRootNode.getPath() + "/" + nodeName1; assertEquals("Wrong path for created node.", expected, n1.getPath()); }
@Test public void testInvalidPathProperty() throws Exception { Session session = getAdminSession(); Node testRootNode = session.getRootNode().addNode("testRoot"); try { testRootNode.setProperty("testPathProperty", "/*/dfsdf", PropertyType.PATH); session.save(); fail("adding a path property without registered namespace must fail."); } catch (RepositoryException e) { // ok. } }
@Test public void testIsNodeTypeForNodeCheckFrozenTypeIfWereNotLookingForFrozenNodes() throws Exception { // GIVEN final Node node = MgnlContext.getJCRSession(RepositoryConstants.WEBSITE).getRootNode().addNode("testPage", NodeTypes.ContentNode.NAME); node.addMixin(JcrConstants.MIX_VERSIONABLE); node.getSession().save(); final Node version = versionManager.addVersion(node, new Rule(NodeTypes.ContentNode.NAME, ",")).getFrozenNode(); // WHEN-THEN assertTrue(NodeUtil.isNodeType(version, NodeTypes.ContentNode.NAME)); }
/** * Tests if text() node test is equivalent with jcr:xmltext. * @throws NotExecutableException */ public void testTextNodeTest() throws RepositoryException, NotExecutableException { Node text1 = testRootNode.addNode(jcrXMLText); text1.setProperty(jcrXMLCharacters, "foo"); testRootNode.getSession().save(); String xpath = "/" + jcrRoot + testRoot + "/text()"; executeXPathQuery(superuser, xpath, new Node[]{text1}); }