@Test
	public void testGetCodeUnitsSet2Backward() throws Exception {

		AddressSet set = new AddressSet();
		set.addRange(addr(0x3ec), addr(0x3ed));
		set.addRange(addr(0x3f3), addr(0x3f4));

		CodeUnitIterator it = listing.getCodeUnits(set, false);

		CodeUnit cu = it.next();
		assertEquals(addr(0x3f4), cu.getMinAddress());
		assertTrue(cu instanceof Instruction);

		for (int i = 0; i < 2; i++) {
			cu = it.next();
			assertEquals(addr(0x3ed - i), cu.getMinAddress());
			assertTrue(cu instanceof Data);
		}

		assertFalse(it.hasNext());
		assertNull(it.next());
	}
** Diagnostic Aid ** Open program in tool
@throws Exception
Ghidra/Features/Base/src/test.slow/java/ghidra/program/database/code/CodeUnitIteratorTest.java