src/main/java/com/atlassian/uwc/hierarchies/ContentHierarchyTest.java [429:487]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
		assertTrue(sampledir.exists() && sampledir.isDirectory());
		
		for (File file : sampledir.listFiles(new NoSvnFilter())) {
			if (file.isDirectory()) continue;
			Page page = new Page(file);
			page.setOriginalText(readFile(file));
			page.setConvertedText(page.getOriginalText());
			page.setUnchangedSource(page.getOriginalText());
			page.setName(guessName(file.getName()).replaceFirst("-\\d$", ""));
			page.setVersion(Integer.parseInt(file.getName().replaceAll("\\D", "")));
			pages.add(page);
		}
		
		HierarchyNode actual = tester.buildHierarchy(pages);
		assertNotNull(actual); //root node
		assertNull(actual.getName());
		assertNull(actual.getPage());
		assertNull(actual.getParent());
		assertNotNull(actual.getChildren());

		Collection<HierarchyNode> children1 = actual.getChildren();
		assertEquals(1, children1.size());
		Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
		nodes1.addAll(children1);
		assertTrue((nodes1.get(0)).getName().equals("Plants"));

		Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
		assertEquals(1, children2.size());
		Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
		nodes2.addAll(children2);
		assertTrue((nodes2.get(0)).getName().equals("Trees"));

		HierarchyNode treenode = nodes2.get(0); 
		
		Collection<HierarchyNode> treechildren = treenode.getChildren();
		assertEquals(5, treechildren.size());
		Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
		trees.addAll(treechildren);
		HierarchyNode node1 = trees.get(0);
		HierarchyNode node2 = trees.get(1);
		HierarchyNode node3 = trees.get(2);
		HierarchyNode node4 = trees.get(3);
		HierarchyNode node5 = trees.get(4);
		
		assertNotNull(node1);
		assertEquals("Chestnut", node1.getName());
		assertEquals(1, node1.getPage().getVersion());
		assertNotNull(node2);
		assertEquals("Chestnut", node2.getName());
		assertEquals(2, node2.getPage().getVersion());
		assertNotNull(node3);
		assertEquals("Chestnut", node3.getName());
		assertEquals(3, node3.getPage().getVersion());
		assertNotNull(node4);
		assertEquals("Pine", node4.getName());
		assertEquals(1, node4.getPage().getVersion());
		assertNotNull(node5);
		assertEquals("Pine", node5.getName());
		assertEquals(2, node5.getPage().getVersion());
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



src/main/java/com/atlassian/uwc/hierarchies/ContentHierarchyTest.java [613:671]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
		assertTrue(sampledir.exists() && sampledir.isDirectory());
		
		for (File file : sampledir.listFiles(new NoSvnFilter())) {
			if (file.isDirectory()) continue;
			Page page = new Page(file);
			page.setOriginalText(readFile(file));
			page.setConvertedText(page.getOriginalText());
			page.setUnchangedSource(page.getOriginalText());
			page.setName(guessName(file.getName()).replaceFirst("-\\d$", ""));
			page.setVersion(Integer.parseInt(file.getName().replaceAll("\\D", "")));
			pages.add(page);
		}
		
		HierarchyNode actual = tester.buildHierarchy(pages);
		assertNotNull(actual); //root node
		assertNull(actual.getName());
		assertNull(actual.getPage());
		assertNull(actual.getParent());
		assertNotNull(actual.getChildren());

		Collection<HierarchyNode> children1 = actual.getChildren();
		assertEquals(1, children1.size());
		Vector<HierarchyNode> nodes1 = new Vector<HierarchyNode>();
		nodes1.addAll(children1);
		assertTrue((nodes1.get(0)).getName().equals("Plants"));

		Collection<HierarchyNode> children2 = (nodes1.get(0)).getChildren();
		assertEquals(1, children2.size());
		Vector<HierarchyNode> nodes2 = new Vector<HierarchyNode>();
		nodes2.addAll(children2);
		assertTrue((nodes2.get(0)).getName().equals("Trees"));

		HierarchyNode treenode = nodes2.get(0); 
		
		Collection<HierarchyNode> treechildren = treenode.getChildren();
		assertEquals(5, treechildren.size());
		Vector<HierarchyNode> trees = new Vector<HierarchyNode>();
		trees.addAll(treechildren);
		HierarchyNode node1 = trees.get(0);
		HierarchyNode node2 = trees.get(1);
		HierarchyNode node3 = trees.get(2);
		HierarchyNode node4 = trees.get(3);
		HierarchyNode node5 = trees.get(4);
		
		assertNotNull(node1);
		assertEquals("Chestnut", node1.getName());
		assertEquals(1, node1.getPage().getVersion());
		assertNotNull(node2);
		assertEquals("Chestnut", node2.getName());
		assertEquals(2, node2.getPage().getVersion());
		assertNotNull(node3);
		assertEquals("Chestnut", node3.getName());
		assertEquals(3, node3.getPage().getVersion());
		assertNotNull(node4);
		assertEquals("Pine", node4.getName());
		assertEquals(1, node4.getPage().getVersion());
		assertNotNull(node5);
		assertEquals("Pine", node5.getName());
		assertEquals(2, node5.getPage().getVersion());
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



