@Test
	public void testTwoToolsWithOneChange_ChangedClosedFirst() {
		PluginTool tool1 = launchTool(DEFAULT_TEST_TOOL_NAME);
		PluginTool tool2 = launchTool(DEFAULT_TEST_TOOL_NAME);

		// make a *config* change
		boolean isSet = getBooleanFooOptions(tool1);
		setBooleanFooOptions(tool1, !isSet);

		closeTool(tool1); // close the changed one (this will trigger a modal dialog)
		waitForSwing();
		Window saveChangesDialog = getSaveChangesDialog(tool1);
		assertNotNull(saveChangesDialog);
		pressSave(saveChangesDialog);
		assertTrue(!saveChangesDialog.isShowing());

		closeTool(tool2);
		waitForSwing();
		String toolTitle = (String) getInstanceField("SAVE_DIALOG_TITLE", tool2);
		Window dialog = getWindowByTitleContaining(tool2.getToolFrame(), toolTitle);
		assertNull(dialog); // no changes, so no dialog

		PluginTool newTool = launchTool(DEFAULT_TEST_TOOL_NAME);
		assertEquals("Changed tool was not saved", !isSet, getBooleanFooOptions(newTool));
	}
A test that outlines and tests the expected saving action of tools that are closed.  Normally,
a tool will save itself when closed, but sometimes it cannot.  This test class verifies these
conditions.
Ghidra/Features/Base/src/test.slow/java/ghidra/framework/project/tool/ToolSaving1Test.java