@Test
public void maximumNodeIdentifier() throws Exception {
File dir = makeTemporaryDirectory();
try {
NonConcurrentTree tree = new TreeBuilder(dir).singleThreadedTree();
NonConcurrentTreeNode root = tree.getRootNode();
for (int i = 0; i < 1000; i++) {
NonConcurrentTreeNode node = tree.getOrCreateNode(root, Integer.toString(i), null);
assertNotNull(node);
assertEquals(Integer.toString(i), node.getName());
NonConcurrentTreeNode child = tree.getOrCreateNode(node, Integer.toString(i), null);
child.release();
node.release();
}
assertTrue(tree.setNextNodeDB(Integer.MAX_VALUE));
for (int i = 1000; i < 2000; i++) {
NonConcurrentTreeNode node = tree.getOrCreateNode(root, Integer.toString(i), null);
assertNotNull(node);
assertEquals(Integer.toString(i), node.getName());
NonConcurrentTreeNode child = tree.getOrCreateNode(node, Integer.toString(i), null);
child.release();
node.release();
}
tree.close(false, close);
} finally {
if (dir != null) {
LessFiles.deleteDir(dir);
}
}
}