Unverified Commit 399d04ee authored by Dennis Jenkins's avatar Dennis Jenkins Committed by GitHub

Merge pull request #590 from kuzkry/ut-optional

changes of ut optional
parents daecadce a6c626eb
...@@ -21,7 +21,20 @@ TEST(optional, copy_constructor) { ...@@ -21,7 +21,20 @@ TEST(optional, copy_constructor) {
EXPECT_TRUE(copy_constructed.get()); EXPECT_TRUE(copy_constructed.get());
} }
TEST(optional, assignment_operator) { TEST(optional, copy_assignment_operator) {
Optional<bool> value(Pistache::Some(true));
ASSERT_FALSE(value.isEmpty());
Optional<bool> other;
EXPECT_TRUE(other.isEmpty());
other = value;
ASSERT_FALSE(other.isEmpty());
EXPECT_TRUE(other.get());
}
TEST(optional, copy_assignment_operator_for_convertible_type) {
Optional<bool> value; Optional<bool> value;
EXPECT_TRUE(value.isEmpty()); EXPECT_TRUE(value.isEmpty());
...@@ -31,17 +44,14 @@ TEST(optional, assignment_operator) { ...@@ -31,17 +44,14 @@ TEST(optional, assignment_operator) {
EXPECT_TRUE(value.get()); EXPECT_TRUE(value.get());
} }
TEST(optional, copy_assignment_operator) { TEST(optional, copy_assignment_operator_for_self_assignment) {
Optional<bool> value(Pistache::Some(true)); Optional<bool> value(Pistache::Some(true));
ASSERT_FALSE(value.isEmpty()); ASSERT_FALSE(value.isEmpty());
EXPECT_TRUE(value.get());
Optional<bool> other; value = value;
EXPECT_TRUE(other.isEmpty()); ASSERT_FALSE(value.isEmpty());
EXPECT_TRUE(value.get());
other = value;
ASSERT_FALSE(other.isEmpty());
EXPECT_TRUE(other.get());
} }
TEST(optional, move_constructor) { TEST(optional, move_constructor) {
...@@ -59,7 +69,8 @@ TEST(optional, move_assignment_operator) { ...@@ -59,7 +69,8 @@ TEST(optional, move_assignment_operator) {
ASSERT_FALSE(value.isEmpty()); ASSERT_FALSE(value.isEmpty());
EXPECT_TRUE(value.get()); EXPECT_TRUE(value.get());
Optional<bool> move_assigned = std::move(value); Optional<bool> move_assigned;
move_assigned = std::move(value);
ASSERT_FALSE(move_assigned.isEmpty()); ASSERT_FALSE(move_assigned.isEmpty());
EXPECT_TRUE(move_assigned.get()); EXPECT_TRUE(move_assigned.get());
} }
...@@ -77,7 +88,7 @@ TEST(optional, copy_constructor_none) { ...@@ -77,7 +88,7 @@ TEST(optional, copy_constructor_none) {
EXPECT_TRUE(value.isEmpty()); EXPECT_TRUE(value.isEmpty());
} }
TEST(optional, assignment_operator_none) { TEST(optional, copy_assignment_operator_none) {
Optional<bool> value(Pistache::None()); Optional<bool> value(Pistache::None());
EXPECT_TRUE(value.isEmpty()); EXPECT_TRUE(value.isEmpty());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment