@@ -21,6 +21,7 @@ import AccountsService 0.1
21import GSettings 1.0
21import GSettings 1.0
22import LightDM 0.1 as LightDM
22import LightDM 0.1 as LightDM
23import Ubuntu.SystemImage 0.1
23import Ubuntu.SystemImage 0.1
24+import Ubuntu.Telephony 0.1 as Telephony
24import Unity.Application 0.1
25import Unity.Application 0.1
25import Unity.Test 0.1 as UT
26import Unity.Test 0.1 as UT
26import Powerd 0.1
27import Powerd 0.1
@@ -110,6 +111,11 @@ Row {
110 signalName: "resettingDevice"
111 signalName: "resettingDevice"
114+ Telephony.CallEntry {
116+ phoneNumber: "+447812221111"
113 UT.UnityTestCase {
119 UT.UnityTestCase {
114 name: "ShellWithPin"
120 name: "ShellWithPin"
115 when: windowShown
121 when: windowShown
@@ -190,6 +196,16 @@ Row {
199+ function confirmLockedApp(app) {
200+ var greeter = findChild(shell, "greeter")
201+ var lockscreen = findChild(shell, "lockscreen")
202+ tryCompare(greeter, "shown", false)
203+ tryCompare(lockscreen, "shown", false)
204+ tryCompare(greeter, "hasLockedApp", true)
205+ tryCompare(greeter, "lockedApp", app)
206+ tryCompare(ApplicationManager, "focusedApplicationId", app)
193 function test_login() {
209 function test_login() {
194 sessionSpy.clear()
210 sessionSpy.clear()
195 tryCompare(sessionSpy, "count", 0)
211 tryCompare(sessionSpy, "count", 0)
@@ -340,11 +356,9 @@ Row {
340 tryCompare(shell, "sideStageEnabled", false)
356 tryCompare(shell, "sideStageEnabled", false)
341 tryCompare(applicationsDisplayLoader, "tabletMode", false)
357 tryCompare(applicationsDisplayLoader, "tabletMode", false)
343− var app = ApplicationManager.startApplication("dialer-app")
359+ var lockscreen = findChild(shell, "lockscreen")
344−
360+ lockscreen.emergencyCall()
345− var greeter = findChild(shell, "greeter")
361+ confirmLockedApp("dialer-app")
346− tryCompare(greeter, "showProgress", 0)
347− tryCompare(greeter, "hasLockedApp", true)
349 // OK, we're in. Now try (but fail) to switch to tablet mode
363 // OK, we're in. Now try (but fail) to switch to tablet mode
350 shell.tablet = true
364 shell.tablet = true
@@ -353,9 +367,15 @@ Row {
354 // And when we kill the app, we go back to locked tablet mode
368 // And when we kill the app, we go back to locked tablet mode
355 killApps()
369 killApps()
370+ var greeter = findChild(shell, "greeter")
356 tryCompare(greeter, "showProgress", 1)
371 tryCompare(greeter, "showProgress", 1)
357 tryCompare(shell, "sideStageEnabled", true)
372 tryCompare(shell, "sideStageEnabled", true)
358 tryCompare(applicationsDisplayLoader, "tabletMode", true)
373 tryCompare(applicationsDisplayLoader, "tabletMode", true)
376+ function test_emergencyDialerIncoming() {
377+ callManager.foregroundCall = phoneCall
378+ confirmLockedApp("dialer-app")