summaryrefslogtreecommitdiff
path: root/test/style/resource_loading.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/style/resource_loading.cpp')
-rw-r--r--test/style/resource_loading.cpp283
1 files changed, 0 insertions, 283 deletions
diff --git a/test/style/resource_loading.cpp b/test/style/resource_loading.cpp
deleted file mode 100644
index b4a539643a..0000000000
--- a/test/style/resource_loading.cpp
+++ /dev/null
@@ -1,283 +0,0 @@
-#include "../fixtures/fixture_log_observer.hpp"
-#include "../fixtures/util.hpp"
-#include "../fixtures/mock_file_source.hpp"
-#include "../fixtures/mock_view.hpp"
-#include "../fixtures/stub_style_observer.hpp"
-
-#include <mbgl/map/map_data.hpp>
-#include <mbgl/map/transform.hpp>
-#include <mbgl/style/style.hpp>
-#include <mbgl/util/exception.hpp>
-#include <mbgl/util/io.hpp>
-#include <mbgl/util/run_loop.hpp>
-#include <mbgl/util/texture_pool.hpp>
-#include <mbgl/util/thread.hpp>
-#include <mbgl/util/string.hpp>
-
-using namespace mbgl;
-
-class ResourceLoadingTest {
-public:
- ResourceLoadingTest(MockFileSource::Type type, const std::string& resource)
- : fileSource(type, resource) {}
-
- util::ThreadContext context { "Map", util::ThreadType::Map, util::ThreadPriority::Regular };
- util::RunLoop loop;
- MockFileSource fileSource;
- StubStyleObserver observer;
- std::function<void ()> onFullyLoaded;
-
- MapData data { MapMode::Still, GLContextMode::Unique, 1.0 };
- MockView view;
- Transform transform { view, ConstrainMode::HeightOnly };
- TexturePool texturePool;
- Style style { data };
-
- void run(const std::string& stylePath) {
- // Squelch logging.
- Log::setObserver(std::make_unique<Log::NullObserver>());
-
- util::ThreadContext::Set(&context);
- util::ThreadContext::setFileSource(&fileSource);
-
- observer.resourceLoaded = [&] () {
- style.update(transform.getState(), texturePool);
- if (style.isLoaded() && onFullyLoaded) {
- onFullyLoaded();
- }
- };
-
- transform.resize({{ 512, 512 }});
- transform.setLatLngZoom({0, 0}, 0);
-
- style.setObserver(&observer);
- style.setJSON(util::read_file(stylePath), "");
- style.cascade();
- style.recalculate(0);
-
- loop.run();
- }
-
- void end() {
- loop.stop();
- }
-};
-
-TEST(ResourceLoading, Success) {
- ResourceLoadingTest test(MockFileSource::Success, "");
-
- test.observer.resourceError = [&] (std::exception_ptr error) {
- FAIL() << util::toString(error);
- };
-
- test.onFullyLoaded = [&] () {
- SUCCEED();
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, RasterSourceFail) {
- ResourceLoadingTest test(MockFileSource::RequestFail, "source_raster.json");
-
- test.observer.sourceError = [&] (Source& source, std::exception_ptr error) {
- EXPECT_EQ(source.id, "rastersource");
- EXPECT_EQ(util::toString(error), "Failed by the test case");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, VectorSourceFail) {
- ResourceLoadingTest test(MockFileSource::RequestFail, "source_vector.json");
-
- test.observer.sourceError = [&] (Source& source, std::exception_ptr error) {
- EXPECT_EQ(source.id, "vectorsource");
- EXPECT_EQ(util::toString(error), "Failed by the test case");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, SpriteJSONFail) {
- ResourceLoadingTest test(MockFileSource::RequestFail, "sprite.json");
-
- test.observer.spriteError = [&] (std::exception_ptr error) {
- EXPECT_EQ(util::toString(error), "Failed by the test case");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, SpriteImageFail) {
- ResourceLoadingTest test(MockFileSource::RequestFail, "sprite.png");
-
- test.observer.spriteError = [&] (std::exception_ptr error) {
- EXPECT_EQ(util::toString(error), "Failed by the test case");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, RasterTileFail) {
- ResourceLoadingTest test(MockFileSource::RequestFail, "raster.png");
-
- test.observer.tileError = [&] (Source& source, const TileID& tileID, std::exception_ptr error) {
- EXPECT_EQ(source.id, "rastersource");
- EXPECT_EQ(std::string(tileID), "0/0/0");
- EXPECT_EQ(util::toString(error), "Failed by the test case");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, VectorTileFail) {
- ResourceLoadingTest test(MockFileSource::RequestFail, "vector.pbf");
-
- test.observer.tileError = [&] (Source& source, const TileID& tileID, std::exception_ptr error) {
- EXPECT_EQ(source.id, "vectorsource");
- EXPECT_EQ(std::string(tileID), "0/0/0");
- EXPECT_EQ(util::toString(error), "Failed by the test case");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, GlyphsFail) {
- ResourceLoadingTest test(MockFileSource::RequestFail, "glyphs.pbf");
-
- test.observer.glyphsError = [&] (const std::string& fontStack, const GlyphRange&, std::exception_ptr error) {
- EXPECT_EQ(fontStack, "Open Sans Regular,Arial Unicode MS Regular");
- EXPECT_EQ(util::toString(error), "Failed by the test case");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, RasterSourceCorrupt) {
- ResourceLoadingTest test(MockFileSource::RequestWithCorruptedData, "source_raster.json");
-
- test.observer.sourceError = [&] (Source& source, std::exception_ptr error) {
- EXPECT_EQ(source.id, "rastersource");
- EXPECT_EQ(util::toString(error), "0 - Invalid value.");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, VectorSourceCorrupt) {
- ResourceLoadingTest test(MockFileSource::RequestWithCorruptedData, "source_vector.json");
-
- test.observer.sourceError = [&] (Source& source, std::exception_ptr error) {
- EXPECT_EQ(source.id, "vectorsource");
- EXPECT_EQ(util::toString(error), "0 - Invalid value.");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, SpriteJSONCorrupt) {
- ResourceLoadingTest test(MockFileSource::RequestWithCorruptedData, "sprite.json");
-
- test.observer.spriteError = [&] (std::exception_ptr error) {
- EXPECT_EQ(util::toString(error), "Failed to parse JSON: Invalid value. at offset 0");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, SpriteImageCorrupt) {
- ResourceLoadingTest test(MockFileSource::RequestWithCorruptedData, "sprite.png");
-
- test.observer.spriteError = [&] (std::exception_ptr error) {
- EXPECT_TRUE(bool(error));
- // Not asserting on platform-specific error text.
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, RasterTileCorrupt) {
- ResourceLoadingTest test(MockFileSource::RequestWithCorruptedData, "raster.png");
-
- test.observer.tileError = [&] (Source& source, const TileID& tileID, std::exception_ptr error) {
- EXPECT_EQ(source.id, "rastersource");
- EXPECT_EQ(std::string(tileID), "0/0/0");
- EXPECT_TRUE(bool(error));
- // Not asserting on platform-specific error text.
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, VectorTileCorrupt) {
- ResourceLoadingTest test(MockFileSource::RequestWithCorruptedData, "vector.pbf");
-
- test.observer.tileError = [&] (Source& source, const TileID& tileID, std::exception_ptr error) {
- EXPECT_EQ(source.id, "vectorsource");
- EXPECT_EQ(std::string(tileID), "0/0/0");
- EXPECT_EQ(util::toString(error), "pbf unknown field type exception");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, GlyphsCorrupt) {
- ResourceLoadingTest test(MockFileSource::RequestWithCorruptedData, "glyphs.pbf");
-
- test.observer.glyphsError = [&] (const std::string& fontStack, const GlyphRange&, std::exception_ptr error) {
- EXPECT_EQ(fontStack, "Open Sans Regular,Arial Unicode MS Regular");
- EXPECT_EQ(util::toString(error), "pbf unknown field type exception");
- test.end();
- };
-
- test.run("test/fixtures/resources/style.json");
-}
-
-TEST(ResourceLoading, UnusedSource) {
- ResourceLoadingTest test(MockFileSource::Success, "");
-
- test.onFullyLoaded = [&] () {
- Source *usedSource = test.style.getSource("usedsource");
- EXPECT_TRUE(usedSource);
- EXPECT_TRUE(usedSource->isLoaded());
-
- Source *unusedSource = test.style.getSource("unusedsource");
- EXPECT_TRUE(unusedSource);
- EXPECT_FALSE(unusedSource->isLoaded());
-
- test.end();
- };
-
- test.run("test/fixtures/resources/style-unused-sources.json");
-}
-
-TEST(ResourceLoading, UnusedSourceActiveViaClassUpdate) {
- ResourceLoadingTest test(MockFileSource::Success, "");
-
- test.data.addClass("visible");
-
- test.onFullyLoaded = [&] () {
- Source *unusedSource = test.style.getSource("unusedsource");
- EXPECT_TRUE(unusedSource);
- EXPECT_TRUE(unusedSource->isLoaded());
-
- test.end();
- };
-
- test.run("test/fixtures/resources/style-unused-sources.json");
-}