@Test public void testOnCreateWhenASKEnabledAndInactive() throws Exception { // mocking ASK as enable and inactive ShadowSettings.ShadowSecure.putString( RuntimeEnvironment.application.getContentResolver(), Settings.Secure.ENABLED_INPUT_METHODS, new ComponentName("net.some.one.else", "net.some.one.else.IME").flattenToString() + ":" + new ComponentName( RuntimeEnvironment.application.getPackageName(), RuntimeEnvironment.application.getPackageName() + ".IME") .flattenToString()); ShadowSettings.ShadowSecure.putString( RuntimeEnvironment.application.getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD, new ComponentName("net.some.one.else", "net.some.one.else.IME").flattenToString()); Assert.assertNull(ShadowApplication.getInstance().getNextStartedActivity()); ActivityController<LauncherSettingsActivity> controller = Robolectric.buildActivity(LauncherSettingsActivity.class).attach().create().resume(); Intent startMainApp = ShadowApplication.getInstance().getNextStartedActivity(); Assert.assertNotNull(startMainApp); Intent expectIntent = new Intent(controller.get(), MainSettingsActivity.class); Assert.assertEquals(expectIntent.getComponent(), startMainApp.getComponent()); }
@Test public void testOnCreateWhenASKNotEnabled() throws Exception { // mocking ASK as disabled and inactive ShadowSettings.ShadowSecure.putString( RuntimeEnvironment.application.getContentResolver(), Settings.Secure.ENABLED_INPUT_METHODS, new ComponentName("net.some.one.else", "net.some.one.else.IME").flattenToString()); ShadowSettings.ShadowSecure.putString( RuntimeEnvironment.application.getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD, new ComponentName("net.some.one.else", "net.some.one.else.IME").flattenToString()); Assert.assertNull(ShadowApplication.getInstance().getNextStartedActivity()); ActivityController<LauncherSettingsActivity> controller = Robolectric.buildActivity(LauncherSettingsActivity.class).attach().create().resume(); Intent startWizardActivityIntent = ShadowApplication.getInstance().getNextStartedActivity(); Assert.assertNotNull(startWizardActivityIntent); Intent expectIntent = MainSettingsActivity.createStartActivityIntentForAddingFragmentToUi( controller.get(), MainSettingsActivity.class, new SetUpKeyboardWizardFragment(), TransitionExperiences.ROOT_FRAGMENT_EXPERIENCE_TRANSITION); Assert.assertEquals(expectIntent.getComponent(), startWizardActivityIntent.getComponent()); Assert.assertEquals(expectIntent.getAction(), startWizardActivityIntent.getAction()); Assert.assertEquals( expectIntent.getParcelableExtra("FragmentChauffeurActivity_KEY_FRAGMENT_ANIMATION"), startWizardActivityIntent.getParcelableExtra( "FragmentChauffeurActivity_KEY_FRAGMENT_ANIMATION")); Assert.assertEquals( expectIntent.getSerializableExtra("FragmentChauffeurActivity_KEY_FRAGMENT_CLASS_TO_ADD"), startWizardActivityIntent.getSerializableExtra( "FragmentChauffeurActivity_KEY_FRAGMENT_CLASS_TO_ADD")); }