summaryrefslogtreecommitdiff
path: root/test/style/tile_source.cpp
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2016-06-14 12:36:46 -0700
committerJohn Firebaugh <john.firebaugh@gmail.com>2016-06-15 11:28:34 -0700
commit87edff4047ddaf5a49b31c060bfae55d74d6c0cb (patch)
tree099ec42890a4449b538dfd70666e3f27044a0a40 /test/style/tile_source.cpp
parenta56f65a4d81b2ee7e1b76816b125c3a7516ceb2a (diff)
downloadqtlocation-mapboxgl-87edff4047ddaf5a49b31c060bfae55d74d6c0cb.tar.gz
[core] Use variant<std::string, Tileset> in TileSource
A tile source can either specify a URL to TileJSON, or inline TileJSON.
Diffstat (limited to 'test/style/tile_source.cpp')
-rw-r--r--test/style/tile_source.cpp37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/style/tile_source.cpp b/test/style/tile_source.cpp
new file mode 100644
index 0000000000..e0709e3be1
--- /dev/null
+++ b/test/style/tile_source.cpp
@@ -0,0 +1,37 @@
+#include <mbgl/test/util.hpp>
+
+#include <mbgl/style/tile_source.hpp>
+#include <mbgl/util/io.hpp>
+
+using namespace mbgl;
+using namespace mbgl::style;
+
+TEST(TileSource, ParseTileJSONRaster) {
+ auto result = TileSource::parseTileJSON(
+ util::read_file("test/fixtures/style_parser/tilejson.raster.json"),
+ "mapbox://mapbox.satellite",
+ SourceType::Raster,
+ 256);
+
+ EXPECT_EQ(0, result.zoomRange.min);
+ EXPECT_EQ(15, result.zoomRange.max);
+ EXPECT_EQ("attribution", result.attribution);
+#if !defined(__ANDROID__) && !defined(__APPLE__)
+ EXPECT_EQ("mapbox://tiles/mapbox.satellite/{z}/{x}/{y}{ratio}.webp", result.tiles[0]);
+#else
+ EXPECT_EQ("mapbox://tiles/mapbox.satellite/{z}/{x}/{y}{ratio}.png", result.tiles[0]);
+#endif
+}
+
+TEST(TileSource, ParseTileJSONVector) {
+ auto result = TileSource::parseTileJSON(
+ util::read_file("test/fixtures/style_parser/tilejson.vector.json"),
+ "mapbox://mapbox.streets",
+ SourceType::Vector,
+ 256);
+
+ EXPECT_EQ(0, result.zoomRange.min);
+ EXPECT_EQ(15, result.zoomRange.max);
+ EXPECT_EQ("attribution", result.attribution);
+ EXPECT_EQ("mapbox://tiles/mapbox.streets/{z}/{x}/{y}.vector.pbf", result.tiles[0]);
+}