summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2015-01-23 11:04:26 +0100
committerKonstantin Käfer <mail@kkaefer.com>2015-02-04 10:49:06 +0100
commit4a985e09f2addcc9cb86f435b5a87517d20ec483 (patch)
tree9a004e7a29b90ebd9d470007946bddfdee3470ec
parent9a549094e02b046eb67a3c3a1ed8df96791825ca (diff)
downloadqtlocation-mapboxgl-4a985e09f2addcc9cb86f435b5a87517d20ec483.tar.gz
asset:// URLs are local to the executable path now
-rw-r--r--Makefile3
-rwxr-xr-xscripts/run_tests.sh4
-rw-r--r--test/headless/headless.cpp3
-rw-r--r--test/storage/cache_response.cpp24
-rw-r--r--test/storage/cache_revalidate.cpp72
-rw-r--r--test/storage/directory_reading.cpp15
-rw-r--r--test/storage/file_reading.cpp35
-rw-r--r--test/storage/http_cancel.cpp12
-rw-r--r--test/storage/http_coalescing.cpp14
-rw-r--r--test/storage/http_error.cpp30
-rw-r--r--test/storage/http_header_parsing.cpp24
-rw-r--r--test/storage/http_load.cpp12
-rw-r--r--test/storage/http_noloop.cpp14
-rw-r--r--test/storage/http_other_loop.cpp12
-rw-r--r--test/storage/http_reading.cpp26
-rw-r--r--test/storage/storage.cpp4
-rw-r--r--test/test.gyp16
17 files changed, 170 insertions, 150 deletions
diff --git a/Makefile b/Makefile
index 7a61e72c6b..3d44723e02 100644
--- a/Makefile
+++ b/Makefile
@@ -106,8 +106,7 @@ android:
test: build/test/Makefile
$(MAKE) -C build/test BUILDTYPE=$(BUILDTYPE) V=$(V) test
-test-%: build/test/Makefile
- $(MAKE) -C build/test BUILDTYPE=$(BUILDTYPE) V=$(V) test
+test-%: test
./scripts/run_tests.sh --gtest_filter=$*
# build Mac OS X project for Xcode
diff --git a/scripts/run_tests.sh b/scripts/run_tests.sh
index e53e9a84a3..6a715f3783 100755
--- a/scripts/run_tests.sh
+++ b/scripts/run_tests.sh
@@ -17,7 +17,9 @@ if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
fi
# install test server dependencies
-(cd test; npm install express@4.11)
+if [ ! -d "test/node_modules/express" ]; then
+ (cd test; npm install express@4.11.1)
+fi
RESULT=0
${CMD} "$@" || RESULT=$?
diff --git a/test/headless/headless.cpp b/test/headless/headless.cpp
index cd976be27d..9f19c2c566 100644
--- a/test/headless/headless.cpp
+++ b/test/headless/headless.cpp
@@ -4,6 +4,7 @@
#include <mbgl/map/map.hpp>
#include <mbgl/util/image.hpp>
#include <mbgl/util/std.hpp>
+#include <mbgl/platform/platform.hpp>
#include <mbgl/util/io.hpp>
#include <rapidjson/document.h>
@@ -29,7 +30,7 @@ void rewriteLocalScheme(rapidjson::Value &value, rapidjson::Document::AllocatorT
class HeadlessTest : public ::testing::TestWithParam<std::string> {
public:
static void SetUpTestCase() {
- const auto server = mbgl::test::getBaseDirectory() + "/headless/server.js";
+ const auto server = mbgl::platform::applicationRoot() + "/TEST_DATA/headless/server.js";
pid = mbgl::test::startServer(server.c_str());
display = std::make_shared<mbgl::HeadlessDisplay>();
}
diff --git a/test/storage/cache_response.cpp b/test/storage/cache_response.cpp
index 57aa8a5e16..62aded7ca2 100644
--- a/test/storage/cache_response.cpp
+++ b/test/storage/cache_response.cpp
@@ -16,20 +16,20 @@ TEST_F(Storage, CacheResponse) {
const Resource resource { Resource::Unknown, "http://127.0.0.1:3000/cache" };
fs.request(resource, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Response 1");
- EXPECT_GT(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Response 1", res.data);
+ EXPECT_LT(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
fs.request(resource, uv_default_loop(), [&, res](const Response &res2) {
- EXPECT_EQ(res2.status, res.status);
- EXPECT_EQ(res2.data, res.data);
- EXPECT_EQ(res2.expires, res.expires);
- EXPECT_EQ(res2.modified, res.modified);
- EXPECT_EQ(res2.etag, res.etag);
- EXPECT_EQ(res2.message, res.message);
+ EXPECT_EQ(res.status, res2.status);
+ EXPECT_EQ(res.data, res2.data);
+ EXPECT_EQ(res.expires, res2.expires);
+ EXPECT_EQ(res.modified, res2.modified);
+ EXPECT_EQ(res.etag, res2.etag);
+ EXPECT_EQ(res.message, res2.message);
CacheResponse.finish();
});
diff --git a/test/storage/cache_revalidate.cpp b/test/storage/cache_revalidate.cpp
index 1c8653f183..75df5822a5 100644
--- a/test/storage/cache_revalidate.cpp
+++ b/test/storage/cache_revalidate.cpp
@@ -17,22 +17,22 @@ TEST_F(Storage, CacheRevalidate) {
const Resource revalidateSame { Resource::Unknown, "http://127.0.0.1:3000/revalidate-same" };
fs.request(revalidateSame, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Response");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "snowfall");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Response", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("snowfall", res.etag);
+ EXPECT_EQ("", res.message);
fs.request(revalidateSame, uv_default_loop(), [&, res](const Response &res2) {
- EXPECT_EQ(res2.status, Response::Successful);
- EXPECT_EQ(res2.data, "Response");
+ EXPECT_EQ(Response::Successful, res2.status);
+ EXPECT_EQ("Response", res2.data);
// We use this to indicate that a 304 reply came back.
- EXPECT_GT(res2.expires, 0);
- EXPECT_EQ(res2.modified, 0);
+ EXPECT_LT(0, res2.expires);
+ EXPECT_EQ(0, res2.modified);
// We're not sending the ETag in the 304 reply, but it should still be there.
- EXPECT_EQ(res2.etag, "snowfall");
- EXPECT_EQ(res2.message, "");
+ EXPECT_EQ("snowfall", res2.etag);
+ EXPECT_EQ("", res2.message);
CacheRevalidateSame.finish();
});
@@ -40,21 +40,21 @@ TEST_F(Storage, CacheRevalidate) {
const Resource revalidateModified { Resource::Unknown, "http://127.0.0.1:3000/revalidate-modified" };
fs.request(revalidateModified, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Response");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 1420070400);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Response", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(1420070400, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
fs.request(revalidateModified, uv_default_loop(), [&, res](const Response &res2) {
- EXPECT_EQ(res2.status, Response::Successful);
- EXPECT_EQ(res2.data, "Response");
+ EXPECT_EQ(Response::Successful, res2.status);
+ EXPECT_EQ("Response", res2.data);
// We use this to indicate that a 304 reply came back.
- EXPECT_GT(res2.expires, 0);
- EXPECT_EQ(res2.modified, 1420070400);
- EXPECT_EQ(res2.etag, "");
- EXPECT_EQ(res2.message, "");
+ EXPECT_LT(0, res2.expires);
+ EXPECT_EQ(1420070400, res2.modified);
+ EXPECT_EQ("", res2.etag);
+ EXPECT_EQ("", res2.message);
CacheRevalidateModified.finish();
});
@@ -62,20 +62,20 @@ TEST_F(Storage, CacheRevalidate) {
const Resource revalidateEtag { Resource::Unknown, "http://127.0.0.1:3000/revalidate-etag" };
fs.request(revalidateEtag, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Response 1");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "response-1");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Response 1", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("response-1", res.etag);
+ EXPECT_EQ("", res.message);
fs.request(revalidateEtag, uv_default_loop(), [&, res](const Response &res2) {
- EXPECT_EQ(res2.status, Response::Successful);
- EXPECT_EQ(res2.data, "Response 2");
- EXPECT_EQ(res2.expires, 0);
- EXPECT_EQ(res2.modified, 0);
- EXPECT_EQ(res2.etag, "response-2");
- EXPECT_EQ(res2.message, "");
+ EXPECT_EQ(Response::Successful, res2.status);
+ EXPECT_EQ("Response 2", res2.data);
+ EXPECT_EQ(0, res2.expires);
+ EXPECT_EQ(0, res2.modified);
+ EXPECT_EQ("response-2", res2.etag);
+ EXPECT_EQ("", res2.message);
CacheRevalidateEtag.finish();
});
diff --git a/test/storage/directory_reading.cpp b/test/storage/directory_reading.cpp
index 90b7846fdd..84221f3f21 100644
--- a/test/storage/directory_reading.cpp
+++ b/test/storage/directory_reading.cpp
@@ -11,14 +11,13 @@ TEST_F(Storage, ReadDirectory) {
DefaultFileSource fs(nullptr, uv_default_loop());
- const auto dir = std::string { "asset://" } + mbgl::test::getBaseDirectory() + "/fixtures/storage";
- fs.request({ Resource::Unknown, dir }, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Error);
- EXPECT_EQ(res.data.size(), 0ul);
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "illegal operation on a directory");
+ fs.request({ Resource::Unknown, "asset://TEST_DATA/fixtures/storage" }, uv_default_loop(), [&](const Response &res) {
+ EXPECT_EQ(Response::Error, res.status);
+ EXPECT_EQ(0ul, res.data.size());
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("illegal operation on a directory", res.message);
ReadDirectory.finish();
});
diff --git a/test/storage/file_reading.cpp b/test/storage/file_reading.cpp
index 93c119d44f..f7eea9c880 100644
--- a/test/storage/file_reading.cpp
+++ b/test/storage/file_reading.cpp
@@ -3,6 +3,7 @@
#include <uv.h>
#include <mbgl/storage/default/default_file_source.hpp>
+#include <mbgl/platform/platform.hpp>
TEST_F(Storage, EmptyFile) {
SCOPED_TEST(EmptyFile)
@@ -11,14 +12,15 @@ TEST_F(Storage, EmptyFile) {
DefaultFileSource fs(nullptr, uv_default_loop());
- const auto file = std::string { "asset://" } + mbgl::test::getBaseDirectory() + "/fixtures/storage/empty";
- fs.request({ Resource::Unknown, file }, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data.size(), 0ul);
- EXPECT_EQ(res.expires, 0);
- EXPECT_GT(res.modified, 0);
- EXPECT_NE(res.etag, "");
- EXPECT_EQ(res.message, "");
+ fs.request({ Resource::Unknown, "asset://TEST_DATA/fixtures/storage/empty" },
+ uv_default_loop(),
+ [&](const Response &res) {
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ(0ul, res.data.size());
+ EXPECT_EQ(0, res.expires);
+ EXPECT_LT(1420000000, res.modified);
+ EXPECT_NE("", res.etag);
+ EXPECT_EQ("", res.message);
EmptyFile.finish();
});
@@ -32,14 +34,15 @@ TEST_F(Storage, NonExistentFile) {
DefaultFileSource fs(nullptr, uv_default_loop());
- const auto file = std::string { "asset://" } + mbgl::test::getBaseDirectory() + "/fixtures/storage/does_not_exist";
- fs.request({ Resource::Unknown, file }, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Error);
- EXPECT_EQ(res.data.size(), 0ul);
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "no such file or directory");
+ fs.request({ Resource::Unknown, "asset://TEST_DATA/fixtures/storage/does_not_exist" },
+ uv_default_loop(),
+ [&](const Response &res) {
+ EXPECT_EQ(Response::Error, res.status);
+ EXPECT_EQ(0ul, res.data.size());
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("no such file or directory", res.message);
NonExistentFile.finish();
});
diff --git a/test/storage/http_cancel.cpp b/test/storage/http_cancel.cpp
index 948fab8de0..0a5194d6e0 100644
--- a/test/storage/http_cancel.cpp
+++ b/test/storage/http_cancel.cpp
@@ -36,12 +36,12 @@ TEST_F(Storage, HTTPCancelMultiple) {
ADD_FAILURE() << "Callback should not be called";
});
fs.request(resource, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Hello World!");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Hello World!", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
HTTPCancelMultiple.finish();
});
fs.cancel(req2);
diff --git a/test/storage/http_coalescing.cpp b/test/storage/http_coalescing.cpp
index 0224b2444d..bfd9137ab3 100644
--- a/test/storage/http_coalescing.cpp
+++ b/test/storage/http_coalescing.cpp
@@ -23,15 +23,15 @@ TEST_F(Storage, HTTPCoalescing) {
if (!reference) {
reference = &res;
} else {
- EXPECT_EQ(reference, &res);
+ EXPECT_EQ(&res, reference);
}
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Hello World!");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Hello World!", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
if (counter >= total) {
HTTPCoalescing.finish();
diff --git a/test/storage/http_error.cpp b/test/storage/http_error.cpp
index 274b88fd4a..101166780a 100644
--- a/test/storage/http_error.cpp
+++ b/test/storage/http_error.cpp
@@ -26,14 +26,14 @@ TEST_F(Storage, HTTPError) {
fs.request({ Resource::Unknown, "http://127.0.0.1:3000/temporary-error" }, uv_default_loop(), [&](const Response &res) {
const auto duration = double(uv_hrtime() - start) / 1e9;
- EXPECT_GT(duration, 1) << "Backoff timer didn't wait 1 second";
- EXPECT_LT(duration, 1.2) << "Backoff timer fired too late";
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Hello World!");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_LT(1, duration) << "Backoff timer didn't wait 1 second";
+ EXPECT_GT(1.2, duration) << "Backoff timer fired too late";
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Hello World!", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
HTTPTemporaryError.finish();
});
@@ -41,14 +41,14 @@ TEST_F(Storage, HTTPError) {
fs.request({ Resource::Unknown, "http://127.0.0.1:3001/" }, uv_default_loop(), [&](const Response &res) {
const auto duration = double(uv_hrtime() - start) / 1e9;
// 1.5 seconds == 4 retries, with a 500ms timeout (see above).
- EXPECT_GT(duration, 1.5) << "Resource wasn't retried the correct number of times";
- EXPECT_LT(duration, 1.7) << "Resource wasn't retried the correct number of times";
- EXPECT_EQ(res.status, Response::Error);
+ EXPECT_LT(1.5, duration) << "Resource wasn't retried the correct number of times";
+ EXPECT_GT(1.7, duration) << "Resource wasn't retried the correct number of times";
+ EXPECT_EQ(Response::Error, res.status);
EXPECT_TRUE(res.message == "Couldn't connect to server" || res.message == "The operation couldn’t be completed. (NSURLErrorDomain error -1004.)");
- EXPECT_EQ(res.data, "");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
+ EXPECT_EQ("", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
HTTPConnectionError.finish();
});
diff --git a/test/storage/http_header_parsing.cpp b/test/storage/http_header_parsing.cpp
index 0ee78a291a..2cecd78a49 100644
--- a/test/storage/http_header_parsing.cpp
+++ b/test/storage/http_header_parsing.cpp
@@ -15,12 +15,12 @@ TEST_F(Storage, HTTPHeaderParsing) {
DefaultFileSource fs(nullptr, uv_default_loop());
fs.request({ Resource::Unknown, "http://127.0.0.1:3000/test?modified=1420794326&expires=1420797926&etag=foo" }, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Hello World!");
- EXPECT_EQ(res.expires, 1420797926);
- EXPECT_EQ(res.modified, 1420794326);
- EXPECT_EQ(res.etag, "foo");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Hello World!", res.data);
+ EXPECT_EQ(1420797926, res.expires);
+ EXPECT_EQ(1420794326, res.modified);
+ EXPECT_EQ("foo", res.etag);
+ EXPECT_EQ("", res.message);
HTTPExpiresTest.finish();
});
@@ -29,12 +29,12 @@ TEST_F(Storage, HTTPHeaderParsing) {
std::chrono::system_clock::now().time_since_epoch()).count();
fs.request({ Resource::Unknown, "http://127.0.0.1:3000/test?cachecontrol=max-age=120" }, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Hello World!");
- EXPECT_LT(std::abs(res.expires - now - 120), 2) << "Expiration date isn't about 120 seconds in the future";
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Hello World!", res.data);
+ EXPECT_GT(2, std::abs(res.expires - now - 120)) << "Expiration date isn't about 120 seconds in the future";
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
HTTPCacheControlTest.finish();
});
diff --git a/test/storage/http_load.cpp b/test/storage/http_load.cpp
index 8ffae05b11..73057f94f4 100644
--- a/test/storage/http_load.cpp
+++ b/test/storage/http_load.cpp
@@ -18,12 +18,12 @@ TEST_F(Storage, HTTPLoad) {
std::function<void()> req = [&]() {
const auto current = number++;
fs.request({ Resource::Unknown, std::string("http://127.0.0.1:3000/load/") + std::to_string(current) }, uv_default_loop(), [&, current](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, std::string("Request ") + std::to_string(current));
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ(std::string("Request ") + std::to_string(current), res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
if (number <= max) {
req();
diff --git a/test/storage/http_noloop.cpp b/test/storage/http_noloop.cpp
index d9d69af5a8..673c8bf73e 100644
--- a/test/storage/http_noloop.cpp
+++ b/test/storage/http_noloop.cpp
@@ -21,13 +21,13 @@ TEST_F(Storage, HTTPNoLoop) {
});
fs.request({ Resource::Unknown, "http://127.0.0.1:3000/temporary-error" }, [&](const Response &res) {
- EXPECT_NE(mainThread, uv_thread_self()) << "Response was called in the same thread";
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Hello World!");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_NE(uv_thread_self(), mainThread) << "Response was called in the same thread";
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Hello World!", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
HTTPNoLoop.finish();
uv_async_send(async);
diff --git a/test/storage/http_other_loop.cpp b/test/storage/http_other_loop.cpp
index d455250393..45990ac217 100644
--- a/test/storage/http_other_loop.cpp
+++ b/test/storage/http_other_loop.cpp
@@ -13,12 +13,12 @@ TEST_F(Storage, HTTPOtherLoop) {
DefaultFileSource fs(nullptr);
fs.request({ Resource::Unknown, "http://127.0.0.1:3000/test" }, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Hello World!");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Hello World!", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
HTTPOtherLoop.finish();
});
diff --git a/test/storage/http_reading.cpp b/test/storage/http_reading.cpp
index 7130e13c6b..3033a6f547 100644
--- a/test/storage/http_reading.cpp
+++ b/test/storage/http_reading.cpp
@@ -15,23 +15,23 @@ TEST_F(Storage, HTTPReading) {
const auto mainThread = uv_thread_self();
fs.request({ Resource::Unknown, "http://127.0.0.1:3000/test" }, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(mainThread, uv_thread_self());
- EXPECT_EQ(res.status, Response::Successful);
- EXPECT_EQ(res.data, "Hello World!");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
- EXPECT_EQ(res.message, "");
+ EXPECT_EQ(uv_thread_self(), mainThread);
+ EXPECT_EQ(Response::Successful, res.status);
+ EXPECT_EQ("Hello World!", res.data);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
+ EXPECT_EQ("", res.message);
HTTPTest.finish();
});
fs.request({ Resource::Unknown, "http://127.0.0.1:3000/doesnotexist" }, uv_default_loop(), [&](const Response &res) {
- EXPECT_EQ(mainThread, uv_thread_self());
- EXPECT_EQ(res.status, Response::Error);
- EXPECT_EQ(res.message, "HTTP status code 404");
- EXPECT_EQ(res.expires, 0);
- EXPECT_EQ(res.modified, 0);
- EXPECT_EQ(res.etag, "");
+ EXPECT_EQ(uv_thread_self(), mainThread);
+ EXPECT_EQ(Response::Error, res.status);
+ EXPECT_EQ("HTTP status code 404", res.message);
+ EXPECT_EQ(0, res.expires);
+ EXPECT_EQ(0, res.modified);
+ EXPECT_EQ("", res.etag);
HTTP404.finish();
});
diff --git a/test/storage/storage.cpp b/test/storage/storage.cpp
index 30f632d193..5dbd13dcd5 100644
--- a/test/storage/storage.cpp
+++ b/test/storage/storage.cpp
@@ -1,10 +1,10 @@
#include "storage.hpp"
+#include <mbgl/platform/platform.hpp>
pid_t Storage::pid = 0;
void Storage::SetUpTestCase() {
- const auto server = mbgl::test::getBaseDirectory() + "/storage/server.js";
- fprintf(stderr, "server: %s\n", server.c_str());
+ const auto server = mbgl::platform::applicationRoot() + "/TEST_DATA/storage/server.js";
pid = mbgl::test::startServer(server.c_str());
}
diff --git a/test/test.gyp b/test/test.gyp
index 0362b8805c..af7dd97eed 100644
--- a/test/test.gyp
+++ b/test/test.gyp
@@ -3,10 +3,23 @@
'../gyp/common.gypi',
],
'targets': [
+ { 'target_name': 'symlink_TEST_DATA',
+ 'type': 'none',
+ 'hard_dependency': 1,
+ 'actions': [
+ {
+ 'action_name': 'Symlink Fixture Directory',
+ 'inputs': ['<!@(pwd)'],
+ 'outputs': ['<(PRODUCT_DIR)/TEST_DATA'], # symlinks the test dir into TEST_DATA
+ 'action': ['ln', '-s', '-f', '-n', '<@(_inputs)', '<@(_outputs)' ],
+ }
+ ],
+ },
{ 'target_name': 'test',
'type': 'executable',
'include_dirs': [ '../include', '../src' ],
'dependencies': [
+ 'symlink_TEST_DATA',
'../mapboxgl.gyp:mbgl-core',
'../mapboxgl.gyp:mbgl-<(platform)',
'../mapboxgl.gyp:mbgl-headless',
@@ -14,7 +27,9 @@
],
'sources': [
'fixtures/main.cpp',
+ 'fixtures/util.hpp',
'fixtures/util.cpp',
+ 'fixtures/fixture_log.hpp',
'fixtures/fixture_log.cpp',
'headless/headless.cpp',
@@ -30,6 +45,7 @@
'miscellaneous/tile.cpp',
'miscellaneous/variant.cpp',
+ 'storage/storage.hpp',
'storage/storage.cpp',
'storage/cache_response.cpp',
'storage/cache_revalidate.cpp',