GeoPackage gpkg = new GeoPackage(file);
List<FeatureEntry> features = gpkg.features();
assertEquals(2, features.size());
FeatureEntry fe = features.get(0);
assertEquals("Fifteen", fe.getTableName());
assertEquals("fifteen description", fe.getDescription());
assertEquals("f15", fe.getIdentifier());
assertEquals(32615, fe.getSrid().intValue());
assertEquals(500000, fe.getBounds().getMinX(), 0.0001);
assertEquals(500000, fe.getBounds().getMinY(), 0.0001);
assertEquals(500100, fe.getBounds().getMaxX(), 0.0001);
assertEquals(500100, fe.getBounds().getMaxY(), 0.0001);
SimpleFeatureReader fr = gpkg.reader(fe, null, null);
assertEquals(1, fr.getFeatureType().getAttributeCount());
assertEquals("pointProperty", fr.getFeatureType().getAttributeDescriptors().get(0).getLocalName());
assertTrue(fr.hasNext());
fr.next();
fr.close();
fe = features.get(1);
assertEquals("Lakes", fe.getTableName());
assertEquals("lakes description", fe.getDescription());
assertEquals("lakes1", fe.getIdentifier());
fr = gpkg.reader(fe, null, null);
assertTrue(fr.hasNext());
fr.next();
fr.close();