mirror of
https://github.com/jbeder/yaml-cpp.git
synced 2025-09-09 04:41:16 +00:00
Fix Node::size() after removing node from sequence (#820)
This commit is contained in:
@@ -59,6 +59,19 @@ TEST(NodeTest, SequenceElementRemoval) {
|
||||
EXPECT_EQ("c", node[1].as<std::string>());
|
||||
}
|
||||
|
||||
TEST(NodeTest, SequenceElementRemovalSizeCheck) {
|
||||
Node node;
|
||||
node[0] = "a";
|
||||
node[1] = "b";
|
||||
node[2] = "c";
|
||||
EXPECT_EQ(3, node.size());
|
||||
node.remove(1);
|
||||
EXPECT_TRUE(node.IsSequence());
|
||||
EXPECT_EQ(2, node.size());
|
||||
EXPECT_EQ("a", node[0].as<std::string>());
|
||||
EXPECT_EQ("c", node[1].as<std::string>());
|
||||
}
|
||||
|
||||
TEST(NodeTest, SequenceFirstElementRemoval) {
|
||||
Node node;
|
||||
node[0] = "a";
|
||||
@@ -71,6 +84,19 @@ TEST(NodeTest, SequenceFirstElementRemoval) {
|
||||
EXPECT_EQ("c", node[1].as<std::string>());
|
||||
}
|
||||
|
||||
TEST(NodeTest, SequenceFirstElementRemovalSizeCheck) {
|
||||
Node node;
|
||||
node[0] = "a";
|
||||
node[1] = "b";
|
||||
node[2] = "c";
|
||||
EXPECT_EQ(3, node.size());
|
||||
node.remove(0);
|
||||
EXPECT_TRUE(node.IsSequence());
|
||||
EXPECT_EQ(2, node.size());
|
||||
EXPECT_EQ("b", node[0].as<std::string>());
|
||||
EXPECT_EQ("c", node[1].as<std::string>());
|
||||
}
|
||||
|
||||
TEST(NodeTest, SequenceLastElementRemoval) {
|
||||
Node node;
|
||||
node[0] = "a";
|
||||
@@ -83,6 +109,19 @@ TEST(NodeTest, SequenceLastElementRemoval) {
|
||||
EXPECT_EQ("b", node[1].as<std::string>());
|
||||
}
|
||||
|
||||
TEST(NodeTest, SequenceLastElementRemovalSizeCheck) {
|
||||
Node node;
|
||||
node[0] = "a";
|
||||
node[1] = "b";
|
||||
node[2] = "c";
|
||||
EXPECT_EQ(3, node.size());
|
||||
node.remove(2);
|
||||
EXPECT_TRUE(node.IsSequence());
|
||||
EXPECT_EQ(2, node.size());
|
||||
EXPECT_EQ("a", node[0].as<std::string>());
|
||||
EXPECT_EQ("b", node[1].as<std::string>());
|
||||
}
|
||||
|
||||
TEST(NodeTest, NodeAssignment) {
|
||||
Node node1;
|
||||
Node node2;
|
||||
|
Reference in New Issue
Block a user