Add test for dynamic_format_arg_store's move ctor
This commit is contained in:
parent
73732e19e9
commit
18764e4ac3
@ -171,3 +171,21 @@ TEST(args_test, throw_on_copy) {
|
||||
}
|
||||
EXPECT_EQ(fmt::vformat("{}", store), "foo");
|
||||
}
|
||||
|
||||
TEST(args_test, move_constructor) {
|
||||
const int test_integer = 42;
|
||||
const char* const test_c_string = "foo";
|
||||
|
||||
auto store_uptr =
|
||||
std::make_unique<fmt::dynamic_format_arg_store<fmt::format_context>>();
|
||||
store_uptr->push_back(test_integer);
|
||||
store_uptr->push_back(std::string(test_c_string));
|
||||
store_uptr->push_back(fmt::arg("a1", test_c_string));
|
||||
|
||||
fmt::dynamic_format_arg_store<fmt::format_context> moved_store(
|
||||
std::move(*store_uptr));
|
||||
store_uptr.reset();
|
||||
EXPECT_EQ(
|
||||
fmt::vformat("{} {} {a1}", moved_store),
|
||||
std::to_string(test_integer) + " " + test_c_string + " " + test_c_string);
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user