From 74e66bac585864e3a43a48023decfeb0b390bdcc Mon Sep 17 00:00:00 2001 From: artemp Date: Fri, 3 Feb 2017 17:36:28 +0100 Subject: [PATCH] test - update malformed featurecollection test (ref #3611) --- test/data | 2 +- test/unit/datasource/geojson.cpp | 68 +++++++++++++++++--------------- 2 files changed, 37 insertions(+), 33 deletions(-) diff --git a/test/data b/test/data index 5ad14e6bd..4035e3453 160000 --- a/test/data +++ b/test/data @@ -1 +1 @@ -Subproject commit 5ad14e6bdf2c5e6babd8ac04aa057ed6c67ac617 +Subproject commit 4035e34534d6f0ad7060fc4a2f5f6018c61d7a1b diff --git a/test/unit/datasource/geojson.cpp b/test/unit/datasource/geojson.cpp index b03668436..337f8098b 100644 --- a/test/unit/datasource/geojson.cpp +++ b/test/unit/datasource/geojson.cpp @@ -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"); + } } }