@@ -130,8 +130,8 @@ TEST_F(RenderedTargetTest, LoadAndUpdateProperties)
130
130
ASSERT_EQ (target.transformOriginPoint (), QPointF (3.4 , 9.7 ));
131
131
132
132
target.updateProperties ();
133
- ASSERT_EQ (target.width (), 14.3 );
134
- ASSERT_EQ (target.height (), 5.8 );
133
+ ASSERT_EQ (target.width (), 5.7592 );
134
+ ASSERT_EQ (target.height (), 8.6388 );
135
135
ASSERT_EQ (std::round (target.x () * 100 ) / 100 , 237.18 );
136
136
ASSERT_EQ (std::round (target.y () * 100 ) / 100 , -100.93 );
137
137
ASSERT_EQ (target.z (), 3 );
@@ -197,6 +197,41 @@ TEST_F(RenderedTargetTest, LoadJpegCostume)
197
197
ASSERT_TRUE (target.bitmapUniqueKey ().toStdString ().empty ());
198
198
target.bitmapBuffer ()->close ();
199
199
200
+ EngineMock engine;
201
+ SpriteModel spriteModel;
202
+ Sprite sprite;
203
+ sprite.setSize (196.5 );
204
+ spriteModel.init (&sprite);
205
+
206
+ EXPECT_CALL (engine, stageWidth ()).WillOnce (Return (480 ));
207
+ EXPECT_CALL (engine, stageHeight ()).WillOnce (Return (360 ));
208
+ target.setEngine (&engine);
209
+ target.setSpriteModel (&spriteModel);
210
+ target.loadProperties ();
211
+ ASSERT_FALSE (target.isSvg ());
212
+ ASSERT_FALSE (target.bitmapBuffer ()->isOpen ());
213
+ target.bitmapBuffer ()->open (QBuffer::ReadOnly);
214
+ ASSERT_EQ (target.bitmapBuffer ()->readAll ().toStdString (), str);
215
+ ASSERT_EQ (target.bitmapUniqueKey ().toStdString (), costume.id ());
216
+ target.bitmapBuffer ()->close ();
217
+ target.bitmapBuffer ()->open (QBuffer::WriteOnly); // clear the buffer
218
+ target.bitmapBuffer ()->close ();
219
+
220
+ StageModel stageModel;
221
+ Stage stage;
222
+
223
+ EXPECT_CALL (engine, stageWidth ()).WillOnce (Return (480 ));
224
+ EXPECT_CALL (engine, stageHeight ()).WillOnce (Return (360 ));
225
+ target.setSpriteModel (nullptr );
226
+ target.setStageModel (&stageModel);
227
+ target.loadProperties ();
228
+ ASSERT_FALSE (target.isSvg ());
229
+ ASSERT_FALSE (target.bitmapBuffer ()->isOpen ());
230
+ target.bitmapBuffer ()->open (QBuffer::ReadOnly);
231
+ ASSERT_EQ (target.bitmapBuffer ()->readAll ().toStdString (), str);
232
+ ASSERT_EQ (target.bitmapUniqueKey ().toStdString (), costume.id ());
233
+ target.bitmapBuffer ()->close ();
234
+
200
235
target.updateProperties ();
201
236
ASSERT_FALSE (target.isSvg ());
202
237
ASSERT_FALSE (target.bitmapBuffer ()->isOpen ());
@@ -223,6 +258,41 @@ TEST_F(RenderedTargetTest, LoadPngCostume)
223
258
ASSERT_TRUE (target.bitmapUniqueKey ().toStdString ().empty ());
224
259
target.bitmapBuffer ()->close ();
225
260
261
+ EngineMock engine;
262
+ SpriteModel spriteModel;
263
+ Sprite sprite;
264
+ sprite.setSize (196.5 );
265
+ spriteModel.init (&sprite);
266
+
267
+ EXPECT_CALL (engine, stageWidth ()).WillOnce (Return (480 ));
268
+ EXPECT_CALL (engine, stageHeight ()).WillOnce (Return (360 ));
269
+ target.setEngine (&engine);
270
+ target.setSpriteModel (&spriteModel);
271
+ target.loadProperties ();
272
+ ASSERT_FALSE (target.isSvg ());
273
+ ASSERT_FALSE (target.bitmapBuffer ()->isOpen ());
274
+ target.bitmapBuffer ()->open (QBuffer::ReadOnly);
275
+ ASSERT_EQ (target.bitmapBuffer ()->readAll ().toStdString (), str);
276
+ ASSERT_EQ (target.bitmapUniqueKey ().toStdString (), costume.id ());
277
+ target.bitmapBuffer ()->close ();
278
+ target.bitmapBuffer ()->open (QBuffer::WriteOnly); // clear the buffer
279
+ target.bitmapBuffer ()->close ();
280
+
281
+ StageModel stageModel;
282
+ Stage stage;
283
+
284
+ EXPECT_CALL (engine, stageWidth ()).WillOnce (Return (480 ));
285
+ EXPECT_CALL (engine, stageHeight ()).WillOnce (Return (360 ));
286
+ target.setSpriteModel (nullptr );
287
+ target.setStageModel (&stageModel);
288
+ target.loadProperties ();
289
+ ASSERT_FALSE (target.isSvg ());
290
+ ASSERT_FALSE (target.bitmapBuffer ()->isOpen ());
291
+ target.bitmapBuffer ()->open (QBuffer::ReadOnly);
292
+ ASSERT_EQ (target.bitmapBuffer ()->readAll ().toStdString (), str);
293
+ ASSERT_EQ (target.bitmapUniqueKey ().toStdString (), costume.id ());
294
+ target.bitmapBuffer ()->close ();
295
+
226
296
target.updateProperties ();
227
297
ASSERT_FALSE (target.isSvg ());
228
298
ASSERT_FALSE (target.bitmapBuffer ()->isOpen ());
@@ -265,15 +335,20 @@ TEST_F(RenderedTargetTest, PaintSvg)
265
335
costume.setData (str.size (), static_cast <void *>(const_cast <char *>(str.c_str ())));
266
336
costume.setBitmapResolution (3 );
267
337
338
+ EngineMock engine;
268
339
Sprite sprite;
269
340
sprite.setSize (2525.7 );
270
341
271
342
SpriteModel model;
272
343
model.init (&sprite);
273
344
345
+ EXPECT_CALL (engine, stageWidth ()).WillOnce (Return (480 ));
346
+ EXPECT_CALL (engine, stageHeight ()).WillOnce (Return (360 ));
274
347
RenderedTarget target;
348
+ target.setEngine (&engine);
275
349
target.setSpriteModel (&model);
276
350
target.loadCostume (&costume);
351
+ target.loadProperties ();
277
352
target.updateProperties ();
278
353
279
354
// Create OpenGL context
0 commit comments