@Test
	public void testCombinedFilter_AddRemove_ItemPassesFilter_FilterJobStateDoesNotRun() {

		//
		// Tests that an item can be added/removed via addObject()/removeObject() *and* that,
		// with a *combined* filter installed, the *filter* phase of the TableLoadJob will *NOT*
		// get run.  (The add/remove operation should perform filtering and sorting outside of
		// the normal TableLoadJob's state machine.)
		//

		int fullCount = getRowCount();

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

		// call addObject()
		long newId = fullCount + 1;

		spyFilter.reset();
		addItemToModel(newId);
		assertNumberOfItemsPassedThroughFilter(1); // **this is the important check**

		assertRowCount(fullCount + 1); // our filter passes everything
	}
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