protected void doTestFindAndApplyMarkupItem_ApplyFails(TestDataProviderAndValidator validator)
			throws Exception {

		VTSessionDB session = createNewSession();
		VTMatch match = createMatchSetWithOneMatch(session, validator.getSourceMatchAddress(),
			validator.getDestinationMatchAddress());
		VTMarkupItem markupItem = validator.searchForMarkupItem(match);

		//
		// verify we cannot unapply before we have applied
		//
		List<VTMarkupItem> markupItems = new ArrayList<>();
		Address destinationAddress = addr();
		markupItem.setDefaultDestinationAddress(destinationAddress, TEST_ADDRESS_SOURCE);
		markupItems.add(markupItem);

		VtTask task = new UnapplyMarkupItemTask(session, null, markupItems);
		runTask(session, task);

		//
		// verify that calling apply still leaves us in an unapplied state
		//
		task = new ApplyMarkupItemTask(session, markupItems, validator.getOptions());
		runTask(session, task);

		assertEquals("The markup item status was not correctly set",
			VTMarkupItemStatus.FAILED_APPLY, markupItem.getStatus());
		validator.assertUnapplied();
	}
Override this method if you want the options used by the validator to differ from the
default version tracking Apply Markup Options.
@return the Apply Markup Options for the validator to use.
Ghidra/Features/VersionTracking/src/test/java/ghidra/feature/vt/api/markupitem/AbstractVTMarkupItemTest.java