@Override public void afterEach() throws Exception { NodeIterator nodeIterator = session.getRootNode().getNodes(); while (nodeIterator.hasNext()) { Node node = nodeIterator.nextNode(); if (!JcrLexicon.SYSTEM.getString().equals(node.getName())) { node.remove(); } } session.save(); super.afterEach(); }
assertEquals(1, rootNode.getNodes("*\t*").getSize()); assertEquals(1, rootNode.getNodes("*\r*").getSize()); assertEquals(1, rootNode.getNodes("*\n*").getSize()); assertEquals(1, rootNode.getNodes("*(*").getSize()); assertEquals(1, rootNode.getNodes("*)*").getSize()); assertEquals(1, rootNode.getNodes("*()*").getSize()); assertEquals(1, rootNode.getNodes("*\\*").getSize()); assertEquals(1, rootNode.getNodes("*?*").getSize()); assertEquals(1, rootNode.getNodes("*!*").getSize()); assertEquals(1, rootNode.getNodes("*^*").getSize()); assertEquals(1, rootNode.getNodes("*$*").getSize()); assertEquals(1, rootNode.getNodes("*{*").getSize()); assertEquals(1, rootNode.getNodes("*}*").getSize()); assertEquals(1, rootNode.getNodes("*{}*").getSize()); assertEquals(1, rootNode.getNodes("*.*").getSize()); assertEquals(1, rootNode.getNodes("*\"*").getSize()); assertEquals(1, rootNode.getNodes("*+*").getSize()); assertEquals(0, rootNode.getNodes("*[*").getSize()); assertEquals(0, rootNode.getNodes("*]*").getSize()); assertEquals(0, rootNode.getNodes("*[]*").getSize()); assertEquals(1, rootNode.getNodes("*:*").getSize()); // jcr:system assertEquals(0, rootNode.getNodes("*/*").getSize()); } finally { specialNode.remove();
@Test @SkipLongRunning public void shouldAllowCreatingManyUnstructuredNodesWithSameNameSiblings() throws Exception { JcrRootNode node = session.getRootNode(); int count = 10000; long start1 = System.nanoTime(); for (int i = 0; i != count; ++i) { node.addNode("childNode"); } long millis = TimeUnit.MILLISECONDS.convert(Math.abs(System.nanoTime() - start1), TimeUnit.NANOSECONDS); printMessage("Time to create " + count + " nodes under root: " + millis + " ms"); long start2 = System.nanoTime(); session.save(); millis = TimeUnit.MILLISECONDS.convert(Math.abs(System.nanoTime() - start2), TimeUnit.NANOSECONDS); printMessage("Time to save " + count + " new nodes: " + millis + " ms"); millis = TimeUnit.MILLISECONDS.convert(Math.abs(System.nanoTime() - start1), TimeUnit.NANOSECONDS); printMessage("Total time to create " + count + " new nodes and save: " + millis + " ms"); NodeIterator iter = node.getNodes("childNode"); assertThat(iter.getSize(), is((long)count)); while (iter.hasNext()) { Node child = iter.nextNode(); assertThat(child.getPrimaryNodeType().getName(), is("nt:unstructured")); } // Now add another node ... start1 = System.nanoTime(); node.addNode("oneMore"); session.save(); millis = TimeUnit.MILLISECONDS.convert(Math.abs(System.nanoTime() - start1), TimeUnit.NANOSECONDS); printMessage("Time to create " + (count + 1) + "th node and save: " + millis + " ms"); }
@Test @FixFor("MODE-2069") public void shouldAllowSearchingForSNSViaRegex() throws Exception { JcrRootNode rootNode = session.getRootNode(); Node child1 = rootNode.addNode("child"); Node child2 = rootNode.addNode("child"); session.save(); try { assertEquals(0, rootNode.getNodes("child[2]").getSize()); assertEquals(0, rootNode.getNodes("*[2]").getSize()); assertEquals(0, rootNode.getNodes("*[1]|*[2]").getSize()); assertEquals(0, rootNode.getNodes(new String[] { "*[2]" }).getSize()); assertEquals(0, rootNode.getNodes(new String[] { "*[1]", "*[2]" }).getSize()); assertEquals(2, rootNode.getNodes(new String[] { "child", "child" }).getSize()); assertEquals(2, rootNode.getNodes(new String[] { "*child" }).getSize()); assertEquals(2, rootNode.getNodes(new String[] { "child*" }).getSize()); assertEquals(2, rootNode.getNodes(new String[] { "child" }).getSize()); } finally { child1.remove(); child2.remove(); session.save(); } }
@Test @FixFor("MODE-2069") public void shouldOnlyTrimLeadingAndTrailingSpacesWhenSearchingViaRegex() throws Exception { JcrRootNode rootNode = session.getRootNode(); Node a = rootNode.addNode(" A "); Node b = rootNode.addNode("B "); Node c = rootNode.addNode(" C"); Node de = rootNode.addNode("D E"); session.save(); try { assertEquals(1, rootNode.getNodes(" A ").getSize()); assertEquals(1, rootNode.getNodes("B ").getSize()); assertEquals(1, rootNode.getNodes(" C").getSize()); assertEquals(2, rootNode.getNodes(" A |B ").getSize()); assertEquals(3, rootNode.getNodes(" A | B | C ").getSize()); assertEquals(1, rootNode.getNodes("D E").getSize()); assertEquals(1, rootNode.getNodes(" D E ").getSize()); assertEquals(2, rootNode.getNodes(" A |D E").getSize()); } finally { a.remove(); b.remove(); c.remove(); de.remove(); session.save(); } }
assertNotFound("/testRoot/subNode", testWsSession); assertNotFound("/testRoot", testWsSession); assertEquals(1, testWsSession.getRootNode().getNodes().getSize());