|
|
|
|
|
|
|
|
CHECK(guard.get() == 3); |
|
|
CHECK(guard.get() == 3); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
TEST_CASE("move assignment has no effect if same object", "[UniqueResource]") |
|
|
|
|
|
{ |
|
|
|
|
|
REQUIRE_CALL(m, deleter(3)); |
|
|
|
|
|
auto guard = sr::make_unique_resource(Handle{3}, deleter); |
|
|
|
|
|
guard = std::move(guard); |
|
|
|
|
|
REQUIRE(guard.get() == 3); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
TEST_CASE("move assignment calls deleter", "[UniqueResource]") |
|
|
TEST_CASE("move assignment calls deleter", "[UniqueResource]") |
|
|
{ |
|
|
{ |
|
|
auto moveFrom = sr::make_unique_resource(Handle{3}, deleter); |
|
|
auto moveFrom = sr::make_unique_resource(Handle{3}, deleter); |