1212using namespace libscratchcpp ;
1313
1414using ::testing::Return;
15- using ::testing::SaveArg;
1615using ::testing::_;
1716
1817static const int PADDING = 5 ;
@@ -111,26 +110,20 @@ TEST(MonitorTest, Sprite)
111110 ASSERT_EQ (block->target (), nullptr );
112111}
113112
114- /* TEST(MonitorTest, UpdateValue)
113+ TEST (MonitorTest, UpdateValue)
115114{
116115 Monitor monitor (" " , " " );
117- VirtualMachine vm1, vm2;
118116 monitor.updateValue (nullptr );
119- monitor.updateValue(&vm1 );
117+ monitor.updateValue (" test " );
120118
121119 MonitorHandlerMock handler;
122120 EXPECT_CALL (handler, init);
123121 monitor.setInterface (&handler);
124122
125- EXPECT_CALL(handler, onValueChanged(&vm1));
126- monitor.updateValue(&vm1);
127-
128- EXPECT_CALL(handler, onValueChanged(nullptr));
129- monitor.updateValue(nullptr);
130-
131- EXPECT_CALL(handler, onValueChanged(&vm2));
132- monitor.updateValue(&vm2);
133- }*/
123+ Value v = 123 ;
124+ EXPECT_CALL (handler, onValueChanged (v));
125+ monitor.updateValue (v);
126+ }
134127
135128TEST (MonitorTest, ChangeValue)
136129{
@@ -141,20 +134,14 @@ TEST(MonitorTest, ChangeValue)
141134 EXPECT_CALL (handler, init);
142135 monitor.setInterface (&handler);
143136
144- /* const VirtualMachine *vm = nullptr;
145- EXPECT_CALL(handler, onValueChanged(_)).WillOnce(SaveArg<0>(&vm));*/
146- monitor.changeValue (0.25 );
147- /* ASSERT_TRUE(vm);
148- ASSERT_EQ(vm->registerCount(), 1);
149- ASSERT_EQ(vm->getInput(0, 1)->toDouble(), 0.25);*/
137+ Value v = " test" ;
138+ EXPECT_CALL (handler, onValueChanged (v));
139+ monitor.changeValue (v);
150140
151141 monitor.setValueChangeFunction ([](Block *block, const Value &newValue) { std::cout << block->opcode () + " " + newValue.toString () << std::endl; });
152- // EXPECT_CALL(handler, onValueChanged(_)).WillOnce(SaveArg<0>(&vm ));
142+ EXPECT_CALL (handler, onValueChanged (v ));
153143 testing::internal::CaptureStdout ();
154- monitor.changeValue (" test" );
155- /* ASSERT_TRUE(vm);
156- ASSERT_EQ(vm->registerCount(), 1);
157- ASSERT_EQ(vm->getInput(0, 1)->toString(), "test");*/
144+ monitor.changeValue (v);
158145 ASSERT_EQ (testing::internal::GetCapturedStdout (), " test_block test\n " );
159146}
160147
0 commit comments