### Question:
CountryBoundariesCell { List<String> getIds(double longitude, double latitude) { List<String> result = new ArrayList<>(containingIds.size()); result.addAll(containingIds); if (!intersectingCountries.isEmpty()) { Point point = new Point(Fixed1E7.doubleToFixed(longitude), Fixed1E7.doubleToFixed(latitude)); for (CountryAreas areas : intersectingCountries) { if (areas.covers(point)) { result.add(areas.id); } } } return result; } CountryBoundariesCell(
			Collection<String> containingIds,
			Collection<CountryAreas> intersectingCountries); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void getDefiniteIds() { assertEquals( Arrays.asList("A","C"), cell(new String[]{"A","C"}, null).getIds(0,0) ); }
@Test public void getInGeometryIds() { assertEquals( Arrays.asList("B"), cell(null, B).getIds(1,1) ); }
@Test public void dontGetOutOfGeometryIds() { assertEquals( Collections.emptyList(), cell(null, B).getIds(4,4) ); }
@Test public void getDefiniteAndInGeometryIds() { assertEquals( Arrays.asList("A","B"), cell(new String[]{"A"},B).getIds(1,1) ); }