@@ -369,12 +369,13 @@ TEST_F(MotionBlocksTest, PointTowardsImpl)
369369 static const std::vector<double > intPosResults = { -101.31 , 29.55 , -90 , 90 , 90 };
370370
371371 // point towards (join "_mouse_" "")
372+ vm.setBytecode (bytecode1);
373+
372374 for (int i = 0 ; i < positions.size (); i++) {
373375 EXPECT_CALL (m_engineMock, mouseX ()).WillOnce (Return (positions[i].first ));
374376 EXPECT_CALL (m_engineMock, mouseY ()).WillOnce (Return (positions[i].second ));
375377
376- // TODO: Move setBytecode() out of the loop and use reset() after task #215 is completed
377- vm.setBytecode (bytecode1);
378+ vm.reset ();
378379 vm.run ();
379380
380381 ASSERT_EQ (vm.registerCount (), 0 );
@@ -384,15 +385,15 @@ TEST_F(MotionBlocksTest, PointTowardsImpl)
384385 // point towards (join "_random_" "")
385386 sprite.setX (std::round (sprite.x ()));
386387 sprite.setY (std::round (sprite.y ()));
388+ vm.setBytecode (bytecode2);
387389
388390 for (int i = 0 ; i < positions.size (); i++) {
389391 EXPECT_CALL (m_engineMock, stageWidth ()).WillOnce (Return (640 ));
390392 EXPECT_CALL (m_engineMock, stageHeight ()).WillOnce (Return (500 ));
391393 EXPECT_CALL (rng, randint (-320 , 320 )).WillOnce (Return (std::round (positions[i].first )));
392394 EXPECT_CALL (rng, randint (-250 , 250 )).WillOnce (Return (std::round (positions[i].second )));
393395
394- // TODO: Move setBytecode() out of the loop and use reset() after task #215 is completed
395- vm.setBytecode (bytecode2);
396+ vm.reset ();
396397 vm.run ();
397398
398399 ASSERT_EQ (vm.registerCount (), 0 );
@@ -403,43 +404,46 @@ TEST_F(MotionBlocksTest, PointTowardsImpl)
403404 sprite.setY (-100.025 );
404405
405406 // point towards (join "Sprite2" "")
407+ vm.setBytecode (bytecode3);
408+
406409 for (int i = 0 ; i < positions.size (); i++) {
407410 anotherSprite.setX (positions[i].first );
408411 anotherSprite.setY (positions[i].second );
409412
410413 EXPECT_CALL (m_engineMock, findTarget (" Sprite2" )).WillOnce (Return (3 ));
411414 EXPECT_CALL (m_engineMock, targetAt (3 )).WillOnce (Return (&anotherSprite));
412415
413- // TODO: Move setBytecode() out of the loop and use reset() after task #215 is completed
414- vm.setBytecode (bytecode3);
416+ vm.reset ();
415417 vm.run ();
416418
417419 ASSERT_EQ (vm.registerCount (), 0 );
418420 ASSERT_EQ (std::round (sprite.direction () * 100 ) / 100 , results[i]);
419421 }
420422
421423 // point towards (Sprite2)
424+ vm.setBytecode (bytecode4);
425+
422426 for (int i = 0 ; i < positions.size (); i++) {
423427 anotherSprite.setX (positions[i].first );
424428 anotherSprite.setY (positions[i].second );
425429
426430 EXPECT_CALL (m_engineMock, targetAt (3 )).WillOnce (Return (&anotherSprite));
427431
428- // TODO: Move setBytecode() out of the loop and use reset() after task #215 is completed
429- vm.setBytecode (bytecode4);
432+ vm.reset ();
430433 vm.run ();
431434
432435 ASSERT_EQ (vm.registerCount (), 0 );
433436 ASSERT_EQ (std::round (sprite.direction () * 100 ) / 100 , results[i]);
434437 }
435438
436439 // point towards (mouse-pointer)
440+ vm.setBytecode (bytecode5);
441+
437442 for (int i = 0 ; i < positions.size (); i++) {
438443 EXPECT_CALL (m_engineMock, mouseX ()).WillOnce (Return (positions[i].first ));
439444 EXPECT_CALL (m_engineMock, mouseY ()).WillOnce (Return (positions[i].second ));
440445
441- // TODO: Move setBytecode() out of the loop and use reset() after task #215 is completed
442- vm.setBytecode (bytecode5);
446+ vm.reset ();
443447 vm.run ();
444448
445449 ASSERT_EQ (vm.registerCount (), 0 );
@@ -449,15 +453,15 @@ TEST_F(MotionBlocksTest, PointTowardsImpl)
449453 // point towards (random position)
450454 sprite.setX (std::round (sprite.x ()));
451455 sprite.setY (std::round (sprite.y ()));
456+ vm.setBytecode (bytecode6);
452457
453458 for (int i = 0 ; i < positions.size (); i++) {
454459 EXPECT_CALL (m_engineMock, stageWidth ()).WillOnce (Return (640 ));
455460 EXPECT_CALL (m_engineMock, stageHeight ()).WillOnce (Return (500 ));
456461 EXPECT_CALL (rng, randint (-320 , 320 )).WillOnce (Return (std::round (positions[i].first )));
457462 EXPECT_CALL (rng, randint (-250 , 250 )).WillOnce (Return (std::round (positions[i].second )));
458463
459- // TODO: Move setBytecode() out of the loop and use reset() after task #215 is completed
460- vm.setBytecode (bytecode6);
464+ vm.reset ();
461465 vm.run ();
462466
463467 ASSERT_EQ (vm.registerCount (), 0 );
0 commit comments