### Question:
PRTreeFeatureIndexer implements FeatureIndexer, MBRConverter<FeatureIndexer.FeatureBounds> { @Override public Set<String> getAllFeatureIds() { return featureIds; } PRTreeFeatureIndexer(); @Override void addFeatures(final List<FeatureBounds> features); @Override Collection<String> findFeatureIds(BoundingBox horizontalExtent,
            Extent<Double> verticalExtent, Extent<DateTime> timeExtent,
            Collection<String> variableIds); @Override Set<String> getAllFeatureIds(); @Override int getDimensions(); @Override double getMax(int axis, FeatureBounds bounds); @Override double getMin(int axis, FeatureBounds bounds);  }### Answer:
@Test public void testgetAllFeatureIds() { HashSet<String> expectedIDs = new HashSet<>(); for (int i = 0; i < ySize; i++) { for (int j = 0; j < xSize; j++) { String featureID = "x" + (Integer.valueOf(j)).toString() + "y" + (Integer.valueOf(i)).toString(); expectedIDs.add(featureID); } } assertEquals(expectedIDs, featureindexer.getAllFeatureIds()); }