diff options
-rw-r--r-- | test/CMakeLists.txt | 1 | ||||
-rw-r--r-- | test/util/pass.test.cpp | 16 |
2 files changed, 17 insertions, 0 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index a9ae0ac874..75f91762a7 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -97,6 +97,7 @@ add_library( ${PROJECT_SOURCE_DIR}/test/util/merge_lines.test.cpp ${PROJECT_SOURCE_DIR}/test/util/number_conversions.test.cpp ${PROJECT_SOURCE_DIR}/test/util/offscreen_texture.test.cpp + ${PROJECT_SOURCE_DIR}/test/util/pass.test.cpp ${PROJECT_SOURCE_DIR}/test/util/position.test.cpp ${PROJECT_SOURCE_DIR}/test/util/projection.test.cpp ${PROJECT_SOURCE_DIR}/test/util/run_loop.test.cpp diff --git a/test/util/pass.test.cpp b/test/util/pass.test.cpp new file mode 100644 index 0000000000..10651f854b --- /dev/null +++ b/test/util/pass.test.cpp @@ -0,0 +1,16 @@ +#include <mbgl/test/util.hpp> + +#include <mbgl/util/pass_types.hpp> + +TEST(Pass, NoCopy) { + static int copyCount = 0; + struct A { + A() = default; + A(A&&) = default; + A(const A&) { ++copyCount; } + static mbgl::Pass<A> create() { return A(); } + }; + A a = A::create(); + (void)a; + EXPECT_EQ(0, copyCount); +}
\ No newline at end of file |