@Test
	public void testOrderedIterator() {
		List<Pair<IntRect, String>> points = generatePoints(rect(1, 12, 1, 12));
		try (Transaction tx = obj.openTransaction("AddPoints")) {
			for (Entry<IntRect, String> ent : points) {
				obj.map.put(ent.getKey(), ent.getValue());
			}
		}
		obj.tree.checkIntegrity();

		List<String> expected;
		List<String> actual;

		expected = List.of("Point(1,6)", "Point(2,6)", "Point(3,6)", "Point(4,6)", "Point(5,6)",
			"Point(6,6)");
		actual = new ArrayList<>(
			obj.map.reduce(IntRectQuery.enclosed(rect(1, 6, 6, 6))).orderedValues());
		assertEquals(expected, actual);

		expected = List.of("Point(6,6)", "Point(5,6)", "Point(4,6)", "Point(3,6)", "Point(2,6)",
			"Point(1,6)");
		actual = new ArrayList<>(obj.map.reduce(
			IntRectQuery.enclosed(rect(1, 6, 6, 6)).starting(Rectangle2DDirection.RIGHTMOST))
				.orderedValues());
	}
@throws InterruptedException maybe when Thread.sleep is uncommented
Ghidra/Debug/ProposedUtils/src/test/java/ghidra/util/database/spatial/RStarTreeMapTest.java