2222
2323package com.owncloud.android.authentication
2424
25- import android. app.Activity
26- import android.os.PowerManager
25+ import androidx.test.core. app.launchActivity
26+ import com.nextcloud.client.TestActivity
2727import com.nextcloud.client.core.Clock
2828import com.nextcloud.client.preferences.AppPreferences
2929import com.owncloud.android.ui.activity.SettingsActivity
3030import io.mockk.MockKAnnotations
3131import io.mockk.every
3232import io.mockk.impl.annotations.MockK
33- import io.mockk.just
34- import io.mockk.mockk
35- import io.mockk.runs
3633import org.junit.Assert.assertTrue
3734import org.junit.Before
3835import org.junit.Test
@@ -58,30 +55,25 @@ class PassCodeManagerIT {
5855
5956 @Test
6057 fun testResumeDuplicateActivity () {
61- // mock activity instead of using real one to avoid dealing with activity transitions
62- val activity: Activity = mockk()
63- val powerManager: PowerManager = mockk()
64- every { powerManager.isScreenOn } returns true
65- every { activity.getSystemService(Activity .POWER_SERVICE ) } returns powerManager
66- every { activity.window } returns null
67- every { activity.startActivityForResult(any(), any()) } just runs
68- every { activity.moveTaskToBack(any()) } returns true
69-
7058 // set locked state
7159 every { appPreferences.lockPreference } returns SettingsActivity .LOCK_PASSCODE
7260 every { appPreferences.lockTimestamp } returns 200
7361 every { clockImpl.millisSinceBoot } returns 10000
7462
75- // resume activity twice
76- var askedForPin = sut.onActivityResumed(activity)
77- assertTrue(" Passcode not requested on first launch" , askedForPin)
78- sut.onActivityResumed(activity)
63+ launchActivity<TestActivity >().use { scenario ->
64+ scenario.onActivity { activity ->
65+ // resume activity twice
66+ var askedForPin = sut.onActivityResumed(activity)
67+ assertTrue(" Passcode not requested on first launch" , askedForPin)
68+ sut.onActivityResumed(activity)
7969
80- // stop it once
81- sut.onActivityStopped(activity)
70+ // stop it once
71+ sut.onActivityStopped(activity)
8272
83- // resume again. should ask for passcode
84- askedForPin = sut.onActivityResumed(activity)
85- assertTrue(" Passcode not requested on subsequent launch after stop" , askedForPin)
73+ // resume again. should ask for passcode
74+ askedForPin = sut.onActivityResumed(activity)
75+ assertTrue(" Passcode not requested on subsequent launch after stop" , askedForPin)
76+ }
77+ }
8678 }
8779}
0 commit comments