Skip to content

Commit 26576e5

Browse files
author
Stanislav Angelovic
committed
test: add Variant move test
1 parent 7fbfcec commit 26576e5

1 file changed

Lines changed: 23 additions & 0 deletions

File tree

tests/unittests/Types_test.cpp

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,29 @@ TEST(AVariant, CanBeCopied)
9797
ASSERT_THAT(variantCopy2.get<std::string>(), Eq(value));
9898
}
9999

100+
TEST(AVariant, CanBeMoved)
101+
{
102+
auto value = "hello"s;
103+
sdbus::Variant variant(value);
104+
105+
auto movedVariant{std::move(variant)};
106+
107+
ASSERT_THAT(movedVariant.get<std::string>(), Eq(value));
108+
ASSERT_TRUE(variant.isEmpty());
109+
}
110+
111+
TEST(AVariant, CanBeMovedIntoAMap)
112+
{
113+
auto value = "hello"s;
114+
sdbus::Variant variant(value);
115+
116+
std::map<std::string, sdbus::Variant> mymap;
117+
mymap.try_emplace("payload", std::move(variant));
118+
119+
ASSERT_THAT(mymap["payload"].get<std::string>(), Eq(value));
120+
ASSERT_TRUE(variant.isEmpty());
121+
}
122+
100123
TEST(AVariant, IsNotEmptyWhenContainsAValue)
101124
{
102125
sdbus::Variant v("hello");

0 commit comments

Comments
 (0)