mirror of
https://github.com/libSDL2pp/libSDL2pp.git
synced 2025-08-03 02:45:57 -04:00
17 lines
438 B
C++
17 lines
438 B
C++
#define MOVE_TEST(cl, obj, getmethod, nullval) { \
|
|
auto ptr = obj.getmethod(); \
|
|
EXPECT_TRUE(ptr != nullval); \
|
|
\
|
|
cl obj1(std::move(obj)); \
|
|
EXPECT_EQUAL(obj1.getmethod(), ptr); \
|
|
EXPECT_TRUE(obj.getmethod() == nullval); \
|
|
\
|
|
std::swap(obj, obj1); \
|
|
EXPECT_EQUAL(obj.getmethod(), ptr); \
|
|
EXPECT_TRUE(obj1.getmethod() == nullval); \
|
|
\
|
|
cl& obj_ref = obj; \
|
|
obj = std::move(obj_ref); \
|
|
EXPECT_EQUAL(obj.getmethod(), ptr); \
|
|
}
|