protected ObjectId createAndSaveTree(final int numEntries, final boolean insertInAscendingKeyOrder) throws Exception { List<Node> nodes = createNodes(numEntries); ObjectId treeId = createAndSaveTree(nodes, insertInAscendingKeyOrder); return treeId; }
protected ObjectId createAndSaveTree(final int numEntries, final boolean insertInAscendingKeyOrder) throws Exception { List<Node> nodes = createNodes(numEntries); ObjectId treeId = createAndSaveTree(nodes, insertInAscendingKeyOrder); return treeId; }
private void testEquality(final int numEntries) throws Exception { final ObjectId treeId1; final ObjectId treeId2; List<Node> nodes = createNodes(numEntries); treeId1 = createAndSaveTree(nodes, true); treeId2 = createAndSaveTree(nodes, false); assertEquals(treeId1, treeId2); }
private void testEquality(final int numEntries) throws Exception { final ObjectId treeId1; final ObjectId treeId2; List<Node> nodes = createNodes(numEntries); treeId1 = createAndSaveTree(nodes, true); treeId2 = createAndSaveTree(nodes, false); assertEquals(treeId1, treeId2); }
@Test public void testPutRandomGet() throws Exception { final int numEntries = 20 * CanonicalNodeNameOrder.normalizedSizeLimit(0) + 1500; final ObjectId treeId; treeId = createAndSaveTree(numEntries, true); final RevTree tree = objectStore.getTree(treeId); { Map<Integer, Node> randomEdits = Maps.newHashMap(); Random randGen = new Random(); for (int i = 0; i < tree.size() / 2; i++) { int random; while (randomEdits.containsKey(random = randGen.nextInt(numEntries))) { ; // $codepro.audit.disable extraSemicolon } String name = "Feature." + random; ObjectId newid = RevObjectTestSupport.hashString(name + "changed"); Node ref = RevObjectFactory.defaultInstance().createNode(name, newid, ObjectId.NULL, TYPE.FEATURE, null, null); randomEdits.put(random, ref); } RevTreeBuilder mutable = createBuiler(tree); for (Node ref : randomEdits.values()) { mutable.put(ref); } mutable.build(); } }
@Test public void testPutRandomGet() throws Exception { final int numEntries = 20 * CanonicalNodeNameOrder.normalizedSizeLimit(0) + 1500; final ObjectId treeId; treeId = createAndSaveTree(numEntries, true); final RevTree tree = objectStore.getTree(treeId); { Map<Integer, Node> randomEdits = Maps.newHashMap(); Random randGen = new Random(); for (int i = 0; i < tree.size() / 2; i++) { int random; while (randomEdits.containsKey(random = randGen.nextInt(numEntries))) { ; // $codepro.audit.disable extraSemicolon } String name = "Feature." + random; ObjectId newid = RevObjectTestSupport.hashString(name + "changed"); Node ref = Node.create(name, newid, ObjectId.NULL, TYPE.FEATURE, null); randomEdits.put(random, ref); } RevTreeBuilder mutable = createBuiler(tree); for (Node ref : randomEdits.values()) { mutable.put(ref); } mutable.build(); } }
@Test public void testPutIterate() throws Exception { final int numEntries = 513;// 100 * 1000; ObjectId treeId; treeId = createAndSaveTree(numEntries, true); final RevTree tree = objectStore.getTree(treeId); DepthTreeIterator it = new DepthTreeIterator("", ObjectId.NULL, tree, objectStore, Strategy.CHILDREN); int counted = Iterators.size(it); assertEquals(numEntries, counted); }
@Test public void testPutIterate() throws Exception { final int numEntries = 513;// 100 * 1000; ObjectId treeId; treeId = createAndSaveTree(numEntries, true); final RevTree tree = objectStore.getTree(treeId); DepthTreeIterator it = new DepthTreeIterator("", ObjectId.NULL, tree, objectStore, Strategy.CHILDREN); int counted = Iterators.size(it); assertEquals(numEntries, counted); }
@Test public void testUpdateSplittedTree() throws Exception { final int numEntries = 600;// (int) (1.5 * NodePathStorageOrder.normalizedSizeLimit(0)); final ObjectId treeId = createAndSaveTree(numEntries, true); final RevTree tree = objectStore.getTree(treeId);
@Test public void testUpdateSplittedTree() throws Exception { final int numEntries = 600;// (int) (1.5 * NodePathStorageOrder.normalizedSizeLimit(0)); final ObjectId treeId = createAndSaveTree(numEntries, true); final RevTree tree = objectStore.getTree(treeId);