diff options
author | Ivo van Dongen <info@ivovandongen.nl> | 2016-11-28 17:35:10 +0200 |
---|---|---|
committer | Ivo van Dongen <ivovandongen@users.noreply.github.com> | 2016-11-30 19:35:29 +0200 |
commit | 60e451174fc1b7100e97f9f7aa2d0766f8fa8389 (patch) | |
tree | 0b7f1aaa460804c5413c4d9941885931d220afb9 /test/style | |
parent | 13b7b3a92b6e4fd88c78b61904abdf87e4903adf (diff) | |
download | qtlocation-mapboxgl-60e451174fc1b7100e97f9f7aa2d0766f8fa8389.tar.gz |
[core] guard against duplicate source id’s
Diffstat (limited to 'test/style')
-rw-r--r-- | test/style/style.test.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/style/style.test.cpp b/test/style/style.test.cpp index 41f12f6ff7..89c5c4ce6f 100644 --- a/test/style/style.test.cpp +++ b/test/style/style.test.cpp @@ -3,10 +3,13 @@ #include <mbgl/style/style.hpp> #include <mbgl/style/source_impl.hpp> +#include <mbgl/style/sources/vector_source.hpp> #include <mbgl/style/layer.hpp> #include <mbgl/util/io.hpp> #include <mbgl/util/run_loop.hpp> +#include <memory> + using namespace mbgl; using namespace mbgl::style; @@ -113,3 +116,21 @@ TEST(Style, Properties) { ASSERT_EQ(0, style.getDefaultZoom()); ASSERT_EQ(0, style.getDefaultPitch()); } + +TEST(Style, DuplicateSource) { + util::RunLoop loop; + + StubFileSource fileSource; + Style style { fileSource, 1.0 }; + + style.setJSON(util::read_file("test/fixtures/resources/style-unused-sources.json")); + + style.addSource(std::make_unique<VectorSource>("sourceId", "mapbox://mapbox.mapbox-terrain-v2")); + + try { + style.addSource(std::make_unique<VectorSource>("sourceId", "mapbox://mapbox.mapbox-terrain-v2")); + FAIL() << "Should not have been allowed to add a duplicate source id"; + } catch (std::runtime_error) { + //Expected + } +} |