@Test
	public void testCombinedFilter_AddRemove_ItemPassesFilter_RefilterThenUndo() throws Exception {

		//
		// Bug Case: This was a case where a table (like the Symbol Table) that uses permanent
		//           combined filters would lose items inserted via the addObject() call.  The 
		//           issue is that the job was not properly updating the table's full source 
		//           data, only its filtered data.   Thus, when a job triggered a reload from 
		//           the original source data, the value would be lost.
		//

		int fullCount = getRowCount();

		createCombinedFilterWithEmptyTextFilter(new AllPassesTableFilter());
		assertFilteredEntireModel();
		assertRowCount(fullCount); // our filter passes everything

		// call addObject()
		long newId = fullCount + 1;
		addItemToModel(newId);
		assertRowCount(fullCount + 1); // our filter passes everything

		filterOnRawColumnValue(newId);
		assertRowCount(1);

		createCombinedFilterWithEmptyTextFilter(new AllPassesTableFilter());
		assertRowCount(fullCount + 1);
	}
Specifically tests the sub-filtering behavior of the {@link ThreadedTableModel}, as well
as some other more complicated filtering combinations
Ghidra/Framework/Docking/src/test.slow/java/docking/widgets/table/threaded/DefaultThreadedTableFilterTest.java