@@ -100,6 +100,7 @@ TEST_F(LooksBlocksTest, RegisterBlocks)
100100 EXPECT_CALL (m_engineMock, addCompileFunction (m_section.get (), " looks_setsizeto" , &LooksBlocks::compileSetSizeTo));
101101 EXPECT_CALL (m_engineMock, addCompileFunction (m_section.get (), " looks_size" , &LooksBlocks::compileSize));
102102 EXPECT_CALL (m_engineMock, addCompileFunction (m_section.get (), " looks_switchcostumeto" , &LooksBlocks::compileSwitchCostumeTo));
103+ EXPECT_CALL (m_engineMock, addCompileFunction (m_section.get (), " looks_nextcostume" , &LooksBlocks::compileNextCostume));
103104 EXPECT_CALL (m_engineMock, addCompileFunction (m_section.get (), " looks_costumenumbername" , &LooksBlocks::compileCostumeNumberName));
104105
105106 // Inputs
@@ -642,6 +643,23 @@ TEST_F(LooksBlocksTest, SwitchCostumeToImpl)
642643}
643644
644645TEST_F (LooksBlocksTest, NextCostume)
646+ {
647+ Compiler compiler (&m_engineMock);
648+
649+ auto block = std::make_shared<Block>(" a" , " looks_nextcostume" );
650+
651+ EXPECT_CALL (m_engineMock, functionIndex (&LooksBlocks::nextCostume)).WillOnce (Return (0 ));
652+
653+ compiler.init ();
654+ compiler.setBlock (block);
655+ LooksBlocks::compileNextCostume (&compiler);
656+ compiler.end ();
657+
658+ ASSERT_EQ (compiler.bytecode (), std::vector<unsigned int >({ vm::OP_START, vm::OP_EXEC, 0 , vm::OP_HALT }));
659+ ASSERT_TRUE (compiler.constValues ().empty ());
660+ }
661+
662+ TEST_F (LooksBlocksTest, NextCostumeImpl)
645663{
646664 static unsigned int bytecode[] = { vm::OP_START, vm::OP_EXEC, 0 , vm::OP_HALT };
647665 static BlockFunc functions[] = { &LooksBlocks::nextCostume };
0 commit comments