@Test
  void testAttributeMinSizePoint() throws Exception {
    List<Coordinate> points = z14CoordinatePixelList(0, 4, 40, 4);

    var results = runWithReaderFeatures(
      Map.of("threads", "1"),
      List.of(
        newReaderFeature(newLineString(points), Map.of())
      ),
      (in, features) -> features.centroid("layer")
        .setZoomRange(11, 14)
        .setBufferPixels(0)
        .setAttrWithMinSize("a", "1", 10)
        .setAttrWithMinSize("b", "2", 20)
        .setAttrWithMinSize("c", "3", 40)
        .setAttrWithMinSize("d", "4", 40, 0, 13) // should show up at z13 and above
    );

    assertEquals(Map.ofEntries(
      newTileEntry(Z11_TILES / 2, Z11_TILES / 2, 11, List.of(
        feature(newPoint(2.5, 0.5), Map.of())
      )),
      newTileEntry(Z12_TILES / 2, Z12_TILES / 2, 12, List.of(
        feature(newPoint(5, 1), Map.of("a", "1"))
      )),
      newTileEntry(Z13_TILES / 2, Z13_TILES / 2, 13, List.of(
        feature(newPoint(10, 2), Map.of("a", "1", "b", "2", "d", "4"))
      )),
      newTileEntry(Z14_TILES / 2, Z14_TILES / 2, 14, List.of(
        feature(newPoint(20, 4), Map.of("a", "1", "b", "2", "c", "3", "d", "4"))
      ))
    ), results.tiles);
  }
In-memory tests with fake data and profiles to ensure all features work end-to-end.
planetiler-core/src/test/java/com/onthegomap/planetiler/PlanetilerTests.java