@@ -2454,59 +2454,6 @@ TEST_F(LooksBlocksTest, NextBackdropImpl)
24542454 ASSERT_EQ (stage.costumeIndex (), 0 );
24552455}
24562456
2457- TEST_F (LooksBlocksTest, NextBackdropAndWait)
2458- {
2459- static unsigned int bytecode[] = { vm::OP_START, vm::OP_EXEC, 0 , vm::OP_EXEC, 1 , vm::OP_EXEC, 2 , vm::OP_HALT };
2460- static BlockFunc functions[] = { &LooksBlocks::nextBackdropAndWait, &LooksBlocks::backdropNumber, &LooksBlocks::checkBackdropScripts };
2461-
2462- Target target;
2463-
2464- Stage stage;
2465- stage.addCostume (std::make_shared<Costume>(" backdrop1" , " b1" , " svg" ));
2466- stage.addCostume (std::make_shared<Costume>(" backdrop2" , " b2" , " svg" ));
2467- stage.addCostume (std::make_shared<Costume>(" backdrop3" , " b3" , " svg" ));
2468- stage.setCostumeIndex (0 );
2469-
2470- VirtualMachine vm (&target, &m_engineMock, nullptr );
2471- vm.setBytecode (bytecode);
2472- vm.setFunctions (functions);
2473-
2474- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2475- EXPECT_CALL (m_engineMock, startBackdropScripts (stage.costumeAt (1 )->broadcast ()));
2476- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (1 )->broadcast ())).WillOnce (Return (true ));
2477- vm.run ();
2478-
2479- ASSERT_EQ (vm.registerCount (), 1 );
2480- ASSERT_EQ (stage.costumeIndex (), 1 );
2481- ASSERT_FALSE (vm.atEnd ());
2482-
2483- EXPECT_CALL (m_engineMock, stage ()).WillOnce (Return (&stage));
2484- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (1 )->broadcast ())).WillOnce (Return (false ));
2485- vm.run ();
2486-
2487- ASSERT_EQ (vm.registerCount (), 0 );
2488- ASSERT_TRUE (vm.atEnd ());
2489-
2490- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2491- EXPECT_CALL (m_engineMock, startBackdropScripts (stage.costumeAt (2 )->broadcast ()));
2492- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (2 )->broadcast ())).WillOnce (Return (false ));
2493- vm.reset ();
2494- vm.run ();
2495-
2496- ASSERT_EQ (vm.registerCount (), 0 );
2497- ASSERT_EQ (stage.costumeIndex (), 2 );
2498- ASSERT_TRUE (vm.atEnd ());
2499-
2500- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2501- EXPECT_CALL (m_engineMock, startBackdropScripts (stage.costumeAt (0 )->broadcast ()));
2502- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (0 )->broadcast ())).WillOnce (Return (false ));
2503- vm.reset ();
2504- vm.run ();
2505-
2506- ASSERT_EQ (vm.registerCount (), 0 );
2507- ASSERT_EQ (stage.costumeIndex (), 0 );
2508- }
2509-
25102457TEST_F (LooksBlocksTest, PreviousBackdrop)
25112458{
25122459 static unsigned int bytecode[] = { vm::OP_START, vm::OP_EXEC, 0 , vm::OP_HALT };
@@ -2548,59 +2495,6 @@ TEST_F(LooksBlocksTest, PreviousBackdrop)
25482495 ASSERT_EQ (stage.costumeIndex (), 2 );
25492496}
25502497
2551- TEST_F (LooksBlocksTest, PreviousBackdropAndWait)
2552- {
2553- static unsigned int bytecode[] = { vm::OP_START, vm::OP_EXEC, 0 , vm::OP_EXEC, 1 , vm::OP_EXEC, 2 , vm::OP_HALT };
2554- static BlockFunc functions[] = { &LooksBlocks::previousBackdropAndWait, &LooksBlocks::backdropNumber, &LooksBlocks::checkBackdropScripts };
2555-
2556- Target target;
2557-
2558- Stage stage;
2559- stage.addCostume (std::make_shared<Costume>(" backdrop1" , " b1" , " svg" ));
2560- stage.addCostume (std::make_shared<Costume>(" backdrop2" , " b2" , " svg" ));
2561- stage.addCostume (std::make_shared<Costume>(" backdrop3" , " b3" , " svg" ));
2562- stage.setCostumeIndex (2 );
2563-
2564- VirtualMachine vm (&target, &m_engineMock, nullptr );
2565- vm.setBytecode (bytecode);
2566- vm.setFunctions (functions);
2567-
2568- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2569- EXPECT_CALL (m_engineMock, startBackdropScripts (stage.costumeAt (1 )->broadcast ()));
2570- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (1 )->broadcast ())).WillOnce (Return (true ));
2571- vm.run ();
2572-
2573- ASSERT_EQ (vm.registerCount (), 1 );
2574- ASSERT_EQ (stage.costumeIndex (), 1 );
2575- ASSERT_FALSE (vm.atEnd ());
2576-
2577- EXPECT_CALL (m_engineMock, stage ()).WillOnce (Return (&stage));
2578- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (1 )->broadcast ())).WillOnce (Return (false ));
2579- vm.run ();
2580-
2581- ASSERT_EQ (vm.registerCount (), 0 );
2582- ASSERT_TRUE (vm.atEnd ());
2583-
2584- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2585- EXPECT_CALL (m_engineMock, startBackdropScripts (stage.costumeAt (0 )->broadcast ()));
2586- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (0 )->broadcast ())).WillOnce (Return (false ));
2587- vm.reset ();
2588- vm.run ();
2589-
2590- ASSERT_EQ (vm.registerCount (), 0 );
2591- ASSERT_EQ (stage.costumeIndex (), 0 );
2592- ASSERT_TRUE (vm.atEnd ());
2593-
2594- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2595- EXPECT_CALL (m_engineMock, startBackdropScripts (stage.costumeAt (2 )->broadcast ()));
2596- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (2 )->broadcast ())).WillOnce (Return (false ));
2597- vm.reset ();
2598- vm.run ();
2599-
2600- ASSERT_EQ (vm.registerCount (), 0 );
2601- ASSERT_EQ (stage.costumeIndex (), 2 );
2602- }
2603-
26042498TEST_F (LooksBlocksTest, RandomBackdrop)
26052499{
26062500 static unsigned int bytecode[] = { vm::OP_START, vm::OP_EXEC, 0 , vm::OP_HALT };
@@ -2650,67 +2544,6 @@ TEST_F(LooksBlocksTest, RandomBackdrop)
26502544 LooksBlocks::rng = RandomGenerator::instance ().get ();
26512545}
26522546
2653- TEST_F (LooksBlocksTest, RandomBackdropAndWait)
2654- {
2655- static unsigned int bytecode[] = { vm::OP_START, vm::OP_EXEC, 0 , vm::OP_EXEC, 1 , vm::OP_EXEC, 2 , vm::OP_HALT };
2656- static BlockFunc functions[] = { &LooksBlocks::randomBackdropAndWait, &LooksBlocks::backdropNumber, &LooksBlocks::checkBackdropScripts };
2657-
2658- Target target;
2659-
2660- Stage stage;
2661-
2662- VirtualMachine vm (&target, &m_engineMock, nullptr );
2663- vm.setBytecode (bytecode);
2664- vm.setFunctions (functions);
2665-
2666- RandomGeneratorMock rng;
2667- LooksBlocks::rng = &rng;
2668-
2669- EXPECT_CALL (rng, randint).Times (0 );
2670- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2671- EXPECT_CALL (m_engineMock, broadcastByPtrRunning).Times (0 );
2672- vm.run ();
2673-
2674- ASSERT_EQ (vm.registerCount (), 0 );
2675-
2676- stage.addCostume (std::make_shared<Costume>(" backdrop1" , " b1" , " svg" ));
2677- stage.addCostume (std::make_shared<Costume>(" backdrop2" , " b2" , " svg" ));
2678- stage.addCostume (std::make_shared<Costume>(" backdrop3" , " b3" , " svg" ));
2679-
2680- EXPECT_CALL (rng, randint (0 , 2 )).WillOnce (Return (1 ));
2681- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2682- EXPECT_CALL (m_engineMock, startBackdropScripts (stage.costumeAt (1 )->broadcast ()));
2683- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (1 )->broadcast ())).WillOnce (Return (true ));
2684- vm.reset ();
2685- vm.run ();
2686-
2687- ASSERT_EQ (vm.registerCount (), 1 );
2688- ASSERT_EQ (stage.costumeIndex (), 1 );
2689- ASSERT_FALSE (vm.atEnd ());
2690-
2691- EXPECT_CALL (m_engineMock, stage ()).WillOnce (Return (&stage));
2692- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (1 )->broadcast ())).WillOnce (Return (false ));
2693- vm.run ();
2694-
2695- ASSERT_EQ (vm.registerCount (), 0 );
2696- ASSERT_TRUE (vm.atEnd ());
2697-
2698- stage.addCostume (std::make_shared<Costume>(" backdrop4" , " b4" , " svg" ));
2699-
2700- EXPECT_CALL (rng, randint (0 , 3 )).WillOnce (Return (2 ));
2701- EXPECT_CALL (m_engineMock, stage ()).Times (4 ).WillRepeatedly (Return (&stage));
2702- EXPECT_CALL (m_engineMock, startBackdropScripts (stage.costumeAt (2 )->broadcast ()));
2703- EXPECT_CALL (m_engineMock, broadcastByPtrRunning (stage.costumeAt (2 )->broadcast ())).WillOnce (Return (false ));
2704- vm.reset ();
2705- vm.run ();
2706-
2707- ASSERT_EQ (vm.registerCount (), 0 );
2708- ASSERT_EQ (stage.costumeIndex (), 2 );
2709- ASSERT_TRUE (vm.atEnd ());
2710-
2711- LooksBlocks::rng = RandomGenerator::instance ().get ();
2712- }
2713-
27142547TEST_F (LooksBlocksTest, GoToFrontBack)
27152548{
27162549 Compiler compiler (&m_engineMock);
0 commit comments