| 5 | { |
| 6 | |
| 7 | TEST( MRMesh, DataModelRemoveChild ) |
| 8 | { |
| 9 | auto child2 = std::make_shared<Object>(); |
| 10 | Object root; |
| 11 | { |
| 12 | EXPECT_EQ( root.children().size(), 0 ); |
| 13 | |
| 14 | auto child1 = std::make_shared<Object>(); |
| 15 | EXPECT_TRUE( root.addChild( child1 ) ); |
| 16 | EXPECT_FALSE( root.addChild( child1 ) ); |
| 17 | EXPECT_EQ( &root, child1->parent() ); |
| 18 | EXPECT_EQ( root.children().size(), 1 ); |
| 19 | |
| 20 | |
| 21 | EXPECT_TRUE( child1->addChild( child2 ) ); |
| 22 | EXPECT_FALSE( child1->addChild( child2 ) ); |
| 23 | EXPECT_EQ( child1.get(), child2->parent() ); |
| 24 | EXPECT_EQ( child1->children().size(), 1 ); |
| 25 | |
| 26 | EXPECT_TRUE( root.removeChild( child1 ) ); |
| 27 | EXPECT_FALSE( root.removeChild( child1 ) ); |
| 28 | EXPECT_EQ( nullptr, child1->parent() ); |
| 29 | EXPECT_EQ( root.children().size(), 0 ); |
| 30 | } |
| 31 | |
| 32 | auto parent = child2->parent(); |
| 33 | EXPECT_EQ( parent, nullptr ); |
| 34 | } |
| 35 | |
| 36 | } //namespace MR |
nothing calls this directly
no test coverage detected