diff options
Diffstat (limited to 'test/storage/asset_file_source.test.cpp')
-rw-r--r-- | test/storage/asset_file_source.test.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/test/storage/asset_file_source.test.cpp b/test/storage/asset_file_source.test.cpp index a39d2963d2..978a41a306 100644 --- a/test/storage/asset_file_source.test.cpp +++ b/test/storage/asset_file_source.test.cpp @@ -69,6 +69,15 @@ TEST(AssetFileSource, Load) { loop.run(); } +TEST(AssetFileSource, AcceptsURL) { + EXPECT_TRUE(AssetFileSource::acceptsURL("asset://empty")); + EXPECT_TRUE(AssetFileSource::acceptsURL("asset:///test")); + EXPECT_FALSE(AssetFileSource::acceptsURL("assds://foo")); + EXPECT_FALSE(AssetFileSource::acceptsURL("asset:")); + EXPECT_FALSE(AssetFileSource::acceptsURL("style.json")); + EXPECT_FALSE(AssetFileSource::acceptsURL("")); +} + TEST(AssetFileSource, EmptyFile) { util::RunLoop loop; @@ -118,6 +127,23 @@ TEST(AssetFileSource, NonExistentFile) { loop.run(); } +TEST(AssetFileSource, InvalidURL) { + util::RunLoop loop; + + AssetFileSource fs("test/fixtures/storage/assets"); + + std::unique_ptr<AsyncRequest> req = fs.request({ Resource::Unknown, "test://wrong-scheme" }, [&](Response res) { + req.reset(); + ASSERT_NE(nullptr, res.error); + EXPECT_EQ(Response::Error::Reason::Other, res.error->reason); + EXPECT_EQ("Invalid asset URL", res.error->message); + ASSERT_FALSE(res.data.get()); + loop.stop(); + }); + + loop.run(); +} + TEST(AssetFileSource, ReadDirectory) { util::RunLoop loop; |