diff options
author | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2019-03-07 23:24:52 +0200 |
---|---|---|
committer | Bruno de Oliveira Abinader <bruno@mapbox.com> | 2019-03-08 18:37:41 +0200 |
commit | 2144e3f3b0b8f08b65c854225d7360847633f689 (patch) | |
tree | 16cadc63b1c3d438c5ddd4bf67aadb2e72e23130 /test/text/glyph_manager.test.cpp | |
parent | 2f88e8257b83b77f6c06c86c99f542976e7d5199 (diff) | |
download | qtlocation-mapboxgl-2144e3f3b0b8f08b65c854225d7360847633f689.tar.gz |
[core] Implement platform::Factory::sharedFileSource()upstream/map-refactor
Diffstat (limited to 'test/text/glyph_manager.test.cpp')
-rw-r--r-- | test/text/glyph_manager.test.cpp | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/test/text/glyph_manager.test.cpp b/test/text/glyph_manager.test.cpp index 3d7a220dc5..bcec1ad0cf 100644 --- a/test/text/glyph_manager.test.cpp +++ b/test/text/glyph_manager.test.cpp @@ -1,6 +1,7 @@ #include <mbgl/test/util.hpp> #include <mbgl/test/stub_file_source.hpp> +#include <mbgl/platform/factory.hpp> #include <mbgl/text/glyph_manager.hpp> #include <mbgl/util/run_loop.hpp> #include <mbgl/util/string.hpp> @@ -65,10 +66,12 @@ public: class GlyphManagerTest { public: util::RunLoop loop; - StubFileSource fileSource; + FileSourceOptions stubFileSourceOptions; + std::shared_ptr<FileSource> fileSource = platform::Factory::sharedFileSource( + stubFileSourceOptions, std::make_shared<StubFileSource>()); StubGlyphManagerObserver observer; StubGlyphRequestor requestor; - GlyphManager glyphManager{ fileSource, std::make_unique<StubLocalGlyphRasterizer>() }; + GlyphManager glyphManager{ stubFileSourceOptions, std::make_unique<StubLocalGlyphRasterizer>() }; void run(const std::string& url, GlyphDependencies dependencies) { // Squelch logging. @@ -89,7 +92,8 @@ public: TEST(GlyphManager, LoadingSuccess) { GlyphManagerTest test; - test.fileSource.glyphsResponse = [&] (const Resource& resource) { + auto stubFileSource = std::static_pointer_cast<StubFileSource>(test.fileSource); + stubFileSource->glyphsResponse = [&] (const Resource& resource) { EXPECT_EQ(Resource::Kind::Glyphs, resource.kind); Response response; response.data = std::make_shared<std::string>(util::read_file("test/fixtures/resources/glyphs.pbf")); @@ -128,7 +132,8 @@ TEST(GlyphManager, LoadingSuccess) { TEST(GlyphManager, LoadingFail) { GlyphManagerTest test; - test.fileSource.glyphsResponse = [&] (const Resource&) { + auto stubFileSource = std::static_pointer_cast<StubFileSource>(test.fileSource); + stubFileSource->glyphsResponse = [&] (const Resource&) { Response response; response.error = std::make_unique<Response::Error>( Response::Error::Reason::Other, @@ -161,7 +166,8 @@ TEST(GlyphManager, LoadingFail) { TEST(GlyphManager, LoadingCorrupted) { GlyphManagerTest test; - test.fileSource.glyphsResponse = [&] (const Resource&) { + auto stubFileSource = std::static_pointer_cast<StubFileSource>(test.fileSource); + stubFileSource->glyphsResponse = [&] (const Resource&) { Response response; response.data = std::make_unique<std::string>("CORRUPTED"); return response; @@ -192,7 +198,8 @@ TEST(GlyphManager, LoadingCorrupted) { TEST(GlyphManager, LoadingCancel) { GlyphManagerTest test; - test.fileSource.glyphsResponse = [&] (const Resource&) { + auto stubFileSource = std::static_pointer_cast<StubFileSource>(test.fileSource); + stubFileSource->glyphsResponse = [&] (const Resource&) { test.end(); return optional<Response>(); }; @@ -212,7 +219,8 @@ TEST(GlyphManager, LoadLocalCJKGlyph) { GlyphManagerTest test; int glyphResponses = 0; - test.fileSource.glyphsResponse = [&] (const Resource&) { + auto stubFileSource = std::static_pointer_cast<StubFileSource>(test.fileSource); + stubFileSource->glyphsResponse = [&] (const Resource&) { glyphResponses++; return optional<Response>(); }; @@ -257,7 +265,8 @@ TEST(GlyphManager, LoadLocalCJKGlyph) { TEST(GlyphManager, LoadingInvalid) { GlyphManagerTest test; - test.fileSource.glyphsResponse = [&] (const Resource& resource) { + auto stubFileSource = std::static_pointer_cast<StubFileSource>(test.fileSource); + stubFileSource->glyphsResponse = [&] (const Resource& resource) { EXPECT_EQ(Resource::Kind::Glyphs, resource.kind); Response response; response.data = std::make_shared<std::string>(util::read_file("test/fixtures/resources/fake_glyphs-0-255.pbf")); @@ -295,10 +304,12 @@ TEST(GlyphManager, ImmediateFileSource) { class GlyphManagerTestSynchronous { public: util::RunLoop loop; - StubFileSource fileSource = { StubFileSource::ResponseType::Synchronous }; + FileSourceOptions stubFileSourceOptions; + std::shared_ptr<FileSource> fileSource = platform::Factory::sharedFileSource( + stubFileSourceOptions, std::make_shared<StubFileSource>(StubFileSource::ResponseType::Synchronous)); StubGlyphManagerObserver observer; StubGlyphRequestor requestor; - GlyphManager glyphManager { fileSource }; + GlyphManager glyphManager { stubFileSourceOptions }; void run(const std::string& url, GlyphDependencies dependencies) { // Squelch logging. @@ -318,7 +329,8 @@ TEST(GlyphManager, ImmediateFileSource) { GlyphManagerTestSynchronous test; - test.fileSource.glyphsResponse = [&] (const Resource&) { + auto stubFileSource = std::static_pointer_cast<StubFileSource>(test.fileSource); + stubFileSource->glyphsResponse = [&] (const Resource&) { Response response; response.data = std::make_shared<std::string>(util::read_file("test/fixtures/resources/glyphs.pbf")); return response; |