summaryrefslogtreecommitdiff
path: root/test/src/mbgl/test/stub_render_source_observer.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/src/mbgl/test/stub_render_source_observer.hpp')
-rw-r--r--test/src/mbgl/test/stub_render_source_observer.hpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/src/mbgl/test/stub_render_source_observer.hpp b/test/src/mbgl/test/stub_render_source_observer.hpp
new file mode 100644
index 0000000000..ff20fff80c
--- /dev/null
+++ b/test/src/mbgl/test/stub_render_source_observer.hpp
@@ -0,0 +1,23 @@
+#pragma once
+
+#include <mbgl/renderer/render_source_observer.hpp>
+
+using namespace mbgl;
+
+/**
+ * An implementation of style::Observer that forwards all methods to dynamically-settable lambdas.
+ */
+class StubRenderSourceObserver : public RenderSourceObserver {
+public:
+ void onTileChanged(RenderSource& source, const OverscaledTileID& tileID) override {
+ if (tileChanged) tileChanged(source, tileID);
+ };
+
+ void
+ onTileError(RenderSource& source, const OverscaledTileID& tileID, std::exception_ptr error) override {
+ if (tileError) tileError(source, tileID, error);
+ }
+
+ std::function<void (RenderSource&, const OverscaledTileID&)> tileChanged;
+ std::function<void (RenderSource&, const OverscaledTileID&, std::exception_ptr)> tileError;
+};