private void selectRows(final int row1, final int row2) {
		logger.trace("SMT.selectRows(): " + row1 + " and " + row2);
		final ListSelectionModel selectionModel = table.getSelectionModel();
		runSwing(() -> {
			selectionModel.setSelectionInterval(row1, row1);
			selectionModel.addSelectionInterval(row2, row2);
		});

		int[] selectedRows = table.getSelectedRows();
		assertEquals(2, selectedRows.length);

		logger.trace("\tSMT.selectRows() - found selected rows: " + selectedRows[0] + " and " +
			selectedRows[1]);

		// We may be passed the rows in non-sorted order.  The selection manager will give us
		// results in ascending order.  Make sure to compare them correctly.
		if (row1 > row2) {
			assertEquals(row2, selectedRows[0]);
			assertEquals(row1, selectedRows[1]);
		}
		else {
			assertEquals(row1, selectedRows[0]);
			assertEquals(row2, selectedRows[1]);
		}

		logger.trace("Selected row value: " + getRowObject(row1));
		logger.trace("Selected row value: " + getRowObject(row2));
	}
Make sure that either the two given rows are an exact match, or that the row objects that
represent each row are equal()
Ghidra/Features/Base/src/test.slow/java/docking/widgets/table/SelectionManagerTest.java