108fb8f8709b227d9c12f5197c1884f22137075a5adriancowhampackage com.xtremelabs.robolectric.shadows;
208fb8f8709b227d9c12f5197c1884f22137075a5adriancowham
308fb8f8709b227d9c12f5197c1884f22137075a5adriancowhamimport android.app.Activity;
408fb8f8709b227d9c12f5197c1884f22137075a5adriancowhamimport android.app.KeyguardManager;
508fb8f8709b227d9c12f5197c1884f22137075a5adriancowhamimport com.xtremelabs.robolectric.WithTestDefaultsRunner;
67061d146b8d12c0d234c2ea322847e47008a3d24pivotalimport org.junit.Test;
77061d146b8d12c0d234c2ea322847e47008a3d24pivotalimport org.junit.runner.RunWith;
87061d146b8d12c0d234c2ea322847e47008a3d24pivotal
97061d146b8d12c0d234c2ea322847e47008a3d24pivotalimport static android.content.Context.KEYGUARD_SERVICE;
107061d146b8d12c0d234c2ea322847e47008a3d24pivotalimport static com.xtremelabs.robolectric.Robolectric.shadowOf;
117061d146b8d12c0d234c2ea322847e47008a3d24pivotalimport static org.hamcrest.CoreMatchers.equalTo;
127061d146b8d12c0d234c2ea322847e47008a3d24pivotalimport static org.junit.Assert.assertFalse;
137061d146b8d12c0d234c2ea322847e47008a3d24pivotalimport static org.junit.Assert.assertThat;
147061d146b8d12c0d234c2ea322847e47008a3d24pivotalimport static org.junit.Assert.assertTrue;
1508fb8f8709b227d9c12f5197c1884f22137075a5adriancowham
1608fb8f8709b227d9c12f5197c1884f22137075a5adriancowham@RunWith(WithTestDefaultsRunner.class)
1708fb8f8709b227d9c12f5197c1884f22137075a5adriancowhampublic class KeyguardManagerTest {
187061d146b8d12c0d234c2ea322847e47008a3d24pivotal
1908fb8f8709b227d9c12f5197c1884f22137075a5adriancowham	@Test
2008fb8f8709b227d9c12f5197c1884f22137075a5adriancowham	public void testIsInRestrcitedInputMode() {
2108fb8f8709b227d9c12f5197c1884f22137075a5adriancowham		Activity activity = new Activity();
227061d146b8d12c0d234c2ea322847e47008a3d24pivotal		KeyguardManager mgr = ( KeyguardManager ) activity.getSystemService( KEYGUARD_SERVICE );
2308fb8f8709b227d9c12f5197c1884f22137075a5adriancowham		assertThat( mgr.inKeyguardRestrictedInputMode(), equalTo( false ) );
247061d146b8d12c0d234c2ea322847e47008a3d24pivotal		ShadowKeyguardManager shadowMgr = shadowOf(mgr);
2508fb8f8709b227d9c12f5197c1884f22137075a5adriancowham		shadowMgr.setinRestrictedInputMode( true );
2608fb8f8709b227d9c12f5197c1884f22137075a5adriancowham		assertThat( mgr.inKeyguardRestrictedInputMode(), equalTo( true ) );
2708fb8f8709b227d9c12f5197c1884f22137075a5adriancowham	}
287061d146b8d12c0d234c2ea322847e47008a3d24pivotal
297061d146b8d12c0d234c2ea322847e47008a3d24pivotal    @Test
307061d146b8d12c0d234c2ea322847e47008a3d24pivotal    public void testShouldBeAbleToDisableTheKeyguardLock() throws Exception {
317061d146b8d12c0d234c2ea322847e47008a3d24pivotal        Activity activity = new Activity();
327061d146b8d12c0d234c2ea322847e47008a3d24pivotal        KeyguardManager mgr = ( KeyguardManager ) activity.getSystemService( KEYGUARD_SERVICE );
337061d146b8d12c0d234c2ea322847e47008a3d24pivotal        KeyguardManager.KeyguardLock lock = mgr.newKeyguardLock(KEYGUARD_SERVICE);
347061d146b8d12c0d234c2ea322847e47008a3d24pivotal        assertTrue(shadowOf(lock).isEnabled());
357061d146b8d12c0d234c2ea322847e47008a3d24pivotal
367061d146b8d12c0d234c2ea322847e47008a3d24pivotal        lock.disableKeyguard();
377061d146b8d12c0d234c2ea322847e47008a3d24pivotal        assertFalse(shadowOf(lock).isEnabled());
387061d146b8d12c0d234c2ea322847e47008a3d24pivotal
397061d146b8d12c0d234c2ea322847e47008a3d24pivotal        lock.reenableKeyguard();
407061d146b8d12c0d234c2ea322847e47008a3d24pivotal        assertTrue(shadowOf(lock).isEnabled());
417061d146b8d12c0d234c2ea322847e47008a3d24pivotal    }
4208fb8f8709b227d9c12f5197c1884f22137075a5adriancowham}
43