@@ -73,7 +73,7 @@ TEST(SpriteTest, Clone)
7373
7474 auto checkCloneData = [](Sprite *clone) {
7575 ASSERT_TRUE (clone);
76- Sprite *root = clone->cloneRoot ();
76+ Sprite *root = clone->cloneSprite ();
7777
7878 ASSERT_EQ (clone->name (), " Sprite1" );
7979 ASSERT_EQ (clone->variables ().size (), 2 );
@@ -111,13 +111,11 @@ TEST(SpriteTest, Clone)
111111 };
112112
113113 ASSERT_FALSE (sprite->isClone ());
114- ASSERT_EQ (sprite->cloneRoot (), nullptr );
115- ASSERT_EQ (sprite->cloneParent (), nullptr );
114+ ASSERT_EQ (sprite->cloneSprite (), nullptr );
116115
117116 ASSERT_EQ (sprite->clone (), nullptr );
118117 ASSERT_FALSE (sprite->isClone ());
119- ASSERT_EQ (sprite->cloneRoot (), nullptr );
120- ASSERT_EQ (sprite->cloneParent (), nullptr );
118+ ASSERT_EQ (sprite->cloneSprite (), nullptr );
121119
122120 EngineMock engine;
123121 sprite->setEngine (&engine);
@@ -131,12 +129,10 @@ TEST(SpriteTest, Clone)
131129 ASSERT_EQ (sprite->clone ().get (), clone1);
132130 ASSERT_EQ (clone1, clone1_2);
133131 ASSERT_FALSE (sprite->isClone ());
134- ASSERT_EQ (sprite->cloneRoot (), nullptr );
135- ASSERT_EQ (sprite->cloneParent (), nullptr );
132+ ASSERT_EQ (sprite->cloneSprite (), nullptr );
136133
137134 ASSERT_TRUE (clone1->isClone ());
138- ASSERT_EQ (clone1->cloneRoot (), sprite.get ());
139- ASSERT_EQ (clone1->cloneParent (), sprite.get ());
135+ ASSERT_EQ (clone1->cloneSprite (), sprite.get ());
140136
141137 checkCloneData (clone1);
142138
@@ -150,11 +146,9 @@ TEST(SpriteTest, Clone)
150146 ASSERT_EQ (clone1->clone ().get (), clone2);
151147 ASSERT_EQ (clone2, clone2_2);
152148 ASSERT_TRUE (clone1->isClone ());
153- ASSERT_EQ (clone1->cloneRoot (), sprite.get ());
154- ASSERT_EQ (clone1->cloneParent (), sprite.get ());
149+ ASSERT_EQ (clone1->cloneSprite (), sprite.get ());
155150 ASSERT_TRUE (clone2->isClone ());
156- ASSERT_EQ (clone2->cloneRoot (), sprite.get ());
157- ASSERT_EQ (clone2->cloneParent (), clone1);
151+ ASSERT_EQ (clone2->cloneSprite (), sprite.get ());
158152
159153 checkCloneData (clone2);
160154
@@ -182,59 +176,24 @@ TEST(SpriteTest, Clone)
182176 EXPECT_CALL (engine, cloneCount ()).WillOnce (Return (150 ));
183177 ASSERT_EQ (sprite->clone (), nullptr );
184178
185- // children
186- const auto &children1 = sprite->children ();
187- ASSERT_EQ (children1.size (), 2 );
188- ASSERT_EQ (children1[0 ].get (), clone1);
189- ASSERT_EQ (children1[1 ].get (), clone4);
179+ // clones
180+ const auto &clones = sprite->clones ();
181+ ASSERT_EQ (clones.size (), 4 );
182+ ASSERT_EQ (clones[0 ].get (), clone1);
183+ ASSERT_EQ (clones[1 ].get (), clone2);
184+ ASSERT_EQ (clones[2 ].get (), clone3);
185+ ASSERT_EQ (clones[3 ].get (), clone4);
190186
191- const auto &children2 = clone1->children ();
192- ASSERT_EQ (children2.size (), 2 );
193- ASSERT_EQ (children2[0 ].get (), clone2);
194- ASSERT_EQ (children2[1 ].get (), clone3);
195-
196- ASSERT_TRUE (clone2->children ().empty ());
197-
198- ASSERT_TRUE (clone3->children ().empty ());
199-
200- ASSERT_TRUE (clone4->children ().empty ());
201-
202- // allChildren
203- auto allChildren = sprite->allChildren ();
204- ASSERT_EQ (allChildren.size (), 4 );
205- ASSERT_EQ (allChildren[0 ].get (), clone1);
206- ASSERT_EQ (allChildren[1 ].get (), clone2);
207- ASSERT_EQ (allChildren[2 ].get (), clone3);
208- ASSERT_EQ (allChildren[3 ].get (), clone4);
209-
210- allChildren = clone1->allChildren ();
211- ASSERT_EQ (allChildren.size (), 2 );
212- ASSERT_EQ (allChildren[0 ].get (), clone2);
213- ASSERT_EQ (allChildren[1 ].get (), clone3);
214-
215- ASSERT_TRUE (clone2->allChildren ().empty ());
216-
217- ASSERT_TRUE (clone3->allChildren ().empty ());
218-
219- ASSERT_TRUE (clone4->allChildren ().empty ());
187+ ASSERT_EQ (clone1->clones (), clones);
188+ ASSERT_EQ (clone2->clones (), clones);
189+ ASSERT_EQ (clone3->clones (), clones);
190+ ASSERT_EQ (clone4->clones (), clones);
220191
221192 ASSERT_EQ (clone2->costumes (), sprite->costumes ());
222193 auto c2 = std::make_shared<Costume>(" costume2" , " " , " png" );
223194 clone2->addCostume (c2);
224195 ASSERT_EQ (clone2->costumes (), sprite->costumes ());
225196
226- EXPECT_CALL (engine, deinitClone (clone2));
227- clone2->~Sprite ();
228-
229- EXPECT_CALL (engine, deinitClone (clone3));
230- clone3->~Sprite ();
231-
232- EXPECT_CALL (engine, deinitClone (clone1)).Times (2 );
233- clone1->~Sprite ();
234-
235- EXPECT_CALL (engine, deinitClone (clone4)).Times (2 );
236- clone4->~Sprite ();
237-
238197 sprite.reset ();
239198}
240199
0 commit comments