@@ -343,6 +343,40 @@ Rectangle {
343343 tryCompare(screenshotImage, "status", Image.Null);
344344 }
345345
346+ function test_suspendrestartApp() {
347+ var screenshotImage = findChild(applicationWindowLoader.item, "screenshotImage");
348+
349+ initSession();
350+ setApplicationState(appRunning);
351+ tryCompare(stateGroup, "state", "surface");
352+ waitUntilTransitionsEnd();
353+
354+ setApplicationState(appSuspended);
355+
356+ cleanupSession();
357+
358+ tryCompare(stateGroup, "state", "screenshot");
359+ waitUntilTransitionsEnd();
360+ tryCompare(fakeApplication, "session", null);
361+
362+ // and restart it
363+ setApplicationState(appStarting);
364+
365+ waitUntilTransitionsEnd();
366+ verify(stateGroup.state === "screenshot");
367+ verify(fakeSession === null);
368+
369+ setApplicationState(appRunning);
370+
371+ waitUntilTransitionsEnd();
372+ verify(stateGroup.state === "screenshot");
373+
374+ initSession();
375+
376+ tryCompare(stateGroup, "state", "surface");
377+ tryCompare(screenshotImage, "status", Image.Null);
378+ }
379+
346380 function test_appCrashed() {
347381 initSession();
348382 setApplicationState(appRunning);