summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorThiago Marcos P. Santos <tmpsantos@gmail.com>2015-05-22 18:00:07 +0300
committerThiago Marcos P. Santos <tmpsantos@gmail.com>2015-05-22 18:00:07 +0300
commita20b89e4ff991b650c7b09e203c2fee5c8e0c62b (patch)
tree797dbd39d96ba88534c212b4629e0f172f1eba0b /test
parenteaf1c24cdc97efeb703ab0b9eb8831d52b2653e9 (diff)
parent733539e36a1dfb16cdf76f73f8c7f1ecd843b653 (diff)
downloadqtlocation-mapboxgl-a20b89e4ff991b650c7b09e203c2fee5c8e0c62b.tar.gz
Merge pull request #1627 from mapbox/hide_logs
Add check for log messages on ResourceLoader tests
Diffstat (limited to 'test')
-rw-r--r--test/resources/resource_loader.cpp31
1 files changed, 29 insertions, 2 deletions
diff --git a/test/resources/resource_loader.cpp b/test/resources/resource_loader.cpp
index 52209e8873..4d8dcc63a0 100644
--- a/test/resources/resource_loader.cpp
+++ b/test/resources/resource_loader.cpp
@@ -1,3 +1,4 @@
+#include "../fixtures/fixture_log_observer.hpp"
#include "../fixtures/util.hpp"
#include "mock_file_source.hpp"
#include "mock_view.hpp"
@@ -119,6 +120,9 @@ TEST_P(ResourceLoaderTest, RequestFailure) {
MockView view;
MockFileSource fileSource(param);
+ FixtureLogObserver* log = new FixtureLogObserver();
+ Log::setObserver(std::unique_ptr<Log::Observer>(log));
+
auto callback = [&loop, &param](std::exception_ptr error) {
try {
if (error) {
@@ -142,10 +146,33 @@ TEST_P(ResourceLoaderTest, RequestFailure) {
loop.stop();
};
- util::Thread<MockMapContext> context(
- "Map", util::ThreadPriority::Regular, view, fileSource, callback);
+ std::unique_ptr<util::Thread<MockMapContext>> context(
+ util::make_unique<util::Thread<MockMapContext>>(
+ "Map", util::ThreadPriority::Regular, view, fileSource, callback));
uv_run(loop.get(), UV_RUN_DEFAULT);
+
+ // Needed because it will make the Map thread
+ // join and cease logging after this point.
+ context.reset();
+
+ std::stringstream message;
+ message << "Failed to load [test/fixtures/resources/" << param << "]: Failed by the test case";
+
+ const FixtureLogObserver::LogMessage logMessage {
+ EventSeverity::Error,
+ Event::ResourceLoader,
+ int64_t(-1),
+ message.str(),
+ };
+
+ if (param.empty()) {
+ EXPECT_EQ(log->count(logMessage), 0u);
+ } else {
+ EXPECT_GT(log->count(logMessage), 0u);
+ }
+
+ EXPECT_EQ(log->unchecked().size(), 0u);
}
INSTANTIATE_TEST_CASE_P(ResourceLoader, ResourceLoaderTest,