mbgl::Thread will keep a ThreadContext for each running instance in a thread_local so we don't need to lookup a man in the Environment every time we need some info about the current thread. This patch is moving the ::currentlyOn check used on Debug build from the Environment class to the ThreadContext.
24 lines
857 B
C++
24 lines
857 B
C++
#include "../fixtures/util.hpp"
|
|
|
|
#include <mbgl/map/map_data.hpp>
|
|
#include <mbgl/map/map_context.hpp>
|
|
#include <mbgl/platform/default/headless_view.hpp>
|
|
#include <mbgl/platform/default/headless_display.hpp>
|
|
#include <mbgl/storage/default_file_source.hpp>
|
|
#include <mbgl/util/thread.hpp>
|
|
|
|
using namespace mbgl;
|
|
|
|
TEST(MapContext, DoubleStyleLoad) {
|
|
std::shared_ptr<HeadlessDisplay> display = std::make_shared<HeadlessDisplay>();
|
|
HeadlessView view(display, 512, 512, 1);
|
|
DefaultFileSource fileSource(nullptr);
|
|
MapData data(view, MapMode::Continuous);
|
|
|
|
util::Thread<MapContext> context({"Map", util::ThreadType::Map, util::ThreadPriority::Regular}, view, fileSource, data);
|
|
|
|
context.invokeSync(&MapContext::setStyleJSON, "", "");
|
|
context.invokeSync(&MapContext::setStyleJSON, "", "");
|
|
context.invokeSync(&MapContext::cleanup);
|
|
}
|