@Test
	public void testCreateStringOverInstruction() throws Exception {

		Program testProgram = buildProgram("stringOverInstructionTest", true);
		builder.clearCodeUnits("0x10006", "0x10032", false);

		Listing listing = testProgram.getListing();
		AddressSpace space = testProgram.getLanguage().getAddressFactory().getDefaultAddressSpace();

		String expectedString = "\"-%s %s %s %s\"";
		Address createdAddr = addr(space, 0x10016);
		Address notCreatedAddr = addr(space, 0x10004);

		Data data;

		// Verify these strings aren't already there
		data = listing.getDefinedDataAt(createdAddr);
		assertNull(data);

		data = listing.getDefinedDataAt(notCreatedAddr);
		assertNull(data);

		AutoAnalysisManager manager = AutoAnalysisManager.getAnalysisManager(testProgram);

		StringsAnalyzer analyzer = new StringsAnalyzer();
		analyzer.added(testProgram, null, monitor, manager.getMessageLog());

		String type, actualValue;

		// Verify that expected string is there
		data = listing.getDefinedDataAt(createdAddr);
		assertNotNull(data);

		type = data.getDataType().getName().toLowerCase();
		assertTrue("Data at address " + createdAddr + " should be a type of string!",
			(type.contains("unicode") || type.contains("string")));

		actualValue = data.getDefaultValueRepresentation();
		assertEquals(expectedString, actualValue);

		// Verify that each non-expected string is not there
		data = listing.getDefinedDataAt(notCreatedAddr);
		assertNull(data);
	}
Check that a string that intersects with an instruction (string's start address is the end
address of an instruction) is not created. The same string without instruction overlap
will be created.

@throws Exception
Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/string/StringsAnalyzerTest.java