@Test
public void testGetMatches() {

	ConcurrentTree<String, String> tree = setupTree();
	
	List<String> matches = tree.getMatches(delimiter.split("b/a/c/d/e/f/g"));
	assertNotNull(matches);
	assertEquals(matches.size(), 3);
	assertEquals(matches.get(0), "b/a/c/d/e/f");
	assertEquals(matches.get(1), "b/a/c/d");
	assertEquals(matches.get(2), "b/a");
	
	matches = tree.getMatches(delimiter.split("b/a/c/c/e/f/g"));
	assertEquals(matches.size(), 1);
	assertEquals(matches.get(0), "b/a");
	
	matches = tree.getMatches(delimiter.split("/b/a/c/d/e/f/g"));
	assertNotNull(matches);
	assertTrue(matches.isEmpty());
	
	matches = tree.getMatches(delimiter.split("b//a/c/d/e/f/g"));
	assertTrue(matches.isEmpty());
	
	matches = tree.getMatches(delimiter.split("b/ /a/c/d/e/f/g"));
	assertTrue(matches.isEmpty());
	
	matches = tree.getMatches(delimiter.split("b/a//c"));
	assertFalse(matches.isEmpty());
}