@@ -163,12 +163,35 @@ TEST_F(ProjectLoaderTest, StartStop)
163163TEST_F (ProjectLoaderTest, TimerEvent)
164164{
165165 ProjectLoader loader;
166+ ASSERT_FALSE (loader.running ());
166167 EngineMock engine;
167168 loader.setEngine (&engine);
168169 QTimerEvent event (0 );
169170
171+ QSignalSpy runningSpy (&loader, &ProjectLoader::runningChanged);
170172 EXPECT_CALL (engine, step ());
173+ EXPECT_CALL (engine, isRunning ()).WillOnce (Return (false ));
171174 QCoreApplication::sendEvent (&loader, &event);
175+ ASSERT_FALSE (loader.running ());
176+ ASSERT_TRUE (runningSpy.empty ());
177+
178+ EXPECT_CALL (engine, step ());
179+ EXPECT_CALL (engine, isRunning ()).WillOnce (Return (true ));
180+ QCoreApplication::sendEvent (&loader, &event);
181+ ASSERT_TRUE (loader.running ());
182+ ASSERT_EQ (runningSpy.size (), 1 );
183+
184+ EXPECT_CALL (engine, step ());
185+ EXPECT_CALL (engine, isRunning ()).WillOnce (Return (true ));
186+ QCoreApplication::sendEvent (&loader, &event);
187+ ASSERT_TRUE (loader.running ());
188+ ASSERT_EQ (runningSpy.size (), 1 );
189+
190+ EXPECT_CALL (engine, step ());
191+ EXPECT_CALL (engine, isRunning ()).WillOnce (Return (false ));
192+ QCoreApplication::sendEvent (&loader, &event);
193+ ASSERT_FALSE (loader.running ());
194+ ASSERT_EQ (runningSpy.size (), 2 );
172195}
173196
174197TEST_F (ProjectLoaderTest, QuestionAsked)
0 commit comments