@Test
	public void testGetOrderedSuccessors() {
		populateModel(3);

		assertEquals(List.of(root),
			root.getOrderedSuccessors(Lifespan.ALL, KeyPath.parse(""), true)
					.map(p -> p.getDestination(root))
					.collect(Collectors.toList()));
		assertEquals(List.of(root),
			root.getOrderedSuccessors(Lifespan.ALL, KeyPath.parse(""), false)
					.map(p -> p.getDestination(root))
					.collect(Collectors.toList()));

		assertEquals(List.of(targets.get(0), targets.get(1), targets.get(2)),
			root.getOrderedSuccessors(Lifespan.ALL, KeyPath.parse("curTarget"), true)
					.map(p -> p.getDestination(root))
					.collect(Collectors.toList()));
		assertEquals(List.of(targets.get(2), targets.get(1), targets.get(0)),
			root.getOrderedSuccessors(Lifespan.ALL, KeyPath.parse("curTarget"), false)
					.map(p -> p.getDestination(root))
					.collect(Collectors.toList()));
	}
Fails because you cannot create a second root object.
Ghidra/Debug/Framework-TraceModeling/src/test/java/ghidra/trace/database/target/DBTraceObjectManagerTest.java