### Question:
PreprocessedColumnPairImpl implements PreprocessedColumnPair { @Timed @Override public IntCollection getAllSimilarRightRecords(int[] left, double threshold) { int leftValue = left[leftColumn]; return getAllSimilarRightRecords(leftValue, threshold); }  @Timed @Override IntCollection getAllSimilarRightRecords(int[] left, double threshold); @Override IntCollection getAllSimilarRightRecords(int leftValue, double threshold); @Override double getMinSimilarity(); @Override Iterable<Double> getThresholds(ThresholdFilter thresholdFilter); @Override double getSimilarity(int leftValue, int rightValue); @Override int getRightValue(int[] right); @Override int getLeftValue(int[] left);  }### Answer:
@Test public void testGetAllSimilarRightRecords() { List<PreprocessedColumnPair> columnPairs = create(); PreprocessedColumnPair ab = columnPairs.get(0); assertThat(ab.getAllSimilarRightRecords(new int[]{4}, 0.5)).hasSize(4); assertThat(ab.getAllSimilarRightRecords(new int[]{4}, 0.5)).contains(Integer.valueOf(51)); assertThat(ab.getAllSimilarRightRecords(new int[]{4}, 0.5)).contains(Integer.valueOf(52)); assertThat(ab.getAllSimilarRightRecords(new int[]{4}, 0.5)).contains(Integer.valueOf(81)); assertThat(ab.getAllSimilarRightRecords(new int[]{4}, 0.5)).contains(Integer.valueOf(82)); assertThat(ab.getAllSimilarRightRecords(new int[]{4}, 0.6)).hasSize(2); assertThat(ab.getAllSimilarRightRecords(new int[]{4}, 0.6)).contains(Integer.valueOf(51)); assertThat(ab.getAllSimilarRightRecords(new int[]{4}, 0.6)).contains(Integer.valueOf(52)); }