@Test
	public void testMultipleMatchesAtSameAddress() {

		// one address in this range contains an instruction with multiple matches for that address
		AddressSet as = new AddressSet();
		as.add(addr(0x1001000), addr(0x1001100));

		ProgramLocation startLoc = new AddressFieldLocation(program, addr(0x01001000));
		SearchOptions searchAllOptions = new SearchOptions("CreateDCW",
			false /* not case sensitive */, true /*forward*/, false /*includeNonLoadedBlocks*/);

		searcher = new ListingDisplaySearcher(tool, program, startLoc, as, searchAllOptions,
			TaskMonitor.DUMMY);

		assertTrue(searcher.hasNext());

		ProgramLocation loc = searcher.next().programLocation();
		assertNotNull(loc);
		assertEquals(addr(0x01001068), loc.getByteAddress());
		assertTrue(loc instanceof LabelFieldLocation);
		loc = searcher.next().programLocation();
		assertNotNull(loc);
		assertEquals(addr(0x01001068), loc.getByteAddress());
		assertTrue(loc instanceof EolCommentFieldLocation);
		assertNull(searcher.next());

	}
Test the searcher that searches fields in the Code Browser
Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/searchtext/ListingDisplaySearcherTest.java