test - update malformed featurecollection test (ref #3611)
This commit is contained in:
parent
d2d62bc95c
commit
74e66bac58
2 changed files with 37 additions and 33 deletions
|
@ -1 +1 @@
|
|||
Subproject commit 5ad14e6bdf2c5e6babd8ac04aa057ed6c67ac617
|
||||
Subproject commit 4035e34534d6f0ad7060fc4a2f5f6018c61d7a1b
|
|
@ -514,7 +514,8 @@ TEST_CASE("geojson") {
|
|||
|
||||
for (auto const& c_str : {"./test/data/json/feature-malformed-1.geojson",
|
||||
"./test/data/json/feature-malformed-2.geojson",
|
||||
"./test/data/json/feature-malformed-3.geojson"})
|
||||
"./test/data/json/feature-malformed-3.geojson",
|
||||
"./test/data/json/feature-malformed-4.geojson"})
|
||||
{
|
||||
std::string filename(c_str);
|
||||
params["file"] = filename;
|
||||
|
@ -554,43 +555,46 @@ TEST_CASE("geojson") {
|
|||
|
||||
SECTION("GeoJSON ensure mapnik::featureset::next() throws on malformed input")
|
||||
{
|
||||
std::string filename{"./test/data/json/featurecollection-malformed.json"};
|
||||
mapnik::parameters params;
|
||||
params["type"] = "geojson";
|
||||
params["file"] = filename;
|
||||
|
||||
// cleanup in the case of a failed previous run
|
||||
if (mapnik::util::exists(filename + ".index"))
|
||||
for (auto const& c_str : {"./test/data/json/featurecollection-malformed.json",
|
||||
"./test/data/json/featurecollection-malformed-2.json"})
|
||||
{
|
||||
mapnik::util::remove(filename + ".index");
|
||||
}
|
||||
std::string filename(c_str);
|
||||
params["file"] = filename;
|
||||
// cleanup in the case of a failed previous run
|
||||
if (mapnik::util::exists(filename + ".index"))
|
||||
{
|
||||
mapnik::util::remove(filename + ".index");
|
||||
}
|
||||
|
||||
CHECK(!mapnik::util::exists(filename + ".index"));
|
||||
int ret = create_disk_index(filename);
|
||||
int ret_posix = (ret >> 8) & 0x000000ff;
|
||||
INFO(ret);
|
||||
INFO(ret_posix);
|
||||
CHECK(mapnik::util::exists(filename + ".index"));
|
||||
CHECK(!mapnik::util::exists(filename + ".index"));
|
||||
int ret = create_disk_index(filename);
|
||||
int ret_posix = (ret >> 8) & 0x000000ff;
|
||||
INFO(ret);
|
||||
INFO(ret_posix);
|
||||
CHECK(mapnik::util::exists(filename + ".index"));
|
||||
|
||||
for (auto cache_features : {true,false})
|
||||
{
|
||||
params["cache_features"] = cache_features;
|
||||
auto ds = mapnik::datasource_cache::instance().create(params);
|
||||
auto fields = ds->get_descriptor().get_descriptors();
|
||||
mapnik::query query(ds->envelope());
|
||||
auto features = ds->features(query);
|
||||
REQUIRE_THROWS(
|
||||
auto feature = features->next();
|
||||
while (feature != nullptr)
|
||||
{
|
||||
feature = features->next();
|
||||
});
|
||||
}
|
||||
for (auto cache_features : {true,false})
|
||||
{
|
||||
params["cache_features"] = cache_features;
|
||||
auto ds = mapnik::datasource_cache::instance().create(params);
|
||||
auto fields = ds->get_descriptor().get_descriptors();
|
||||
mapnik::query query(ds->envelope());
|
||||
auto features = ds->features(query);
|
||||
REQUIRE_THROWS(
|
||||
auto feature = features->next();
|
||||
while (feature != nullptr)
|
||||
{
|
||||
feature = features->next();
|
||||
});
|
||||
}
|
||||
|
||||
// cleanup
|
||||
if (mapnik::util::exists(filename + ".index"))
|
||||
{
|
||||
mapnik::util::remove(filename + ".index");
|
||||
// cleanup
|
||||
if (mapnik::util::exists(filename + ".index"))
|
||||
{
|
||||
mapnik::util::remove(filename + ".index");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue