Search in sources :

Example 71 with ShadowActivity

use of org.robolectric.shadows.ShadowActivity in project android_packages_apps_Settings by SudaMod.

the class DashboardFeatureProviderImplTest method bindPreference_withIntentActionMetatdata_shouldSetLaunchAction.

@Test
public void bindPreference_withIntentActionMetatdata_shouldSetLaunchAction() {
    Activity activity = Robolectric.buildActivity(Activity.class).get();
    final ShadowApplication application = ShadowApplication.getInstance();
    final Preference preference = new Preference(application.getApplicationContext());
    final Tile tile = new Tile();
    tile.key = "key";
    tile.intent = new Intent();
    tile.intent.setComponent(new ComponentName("pkg", "class"));
    tile.metaData = new Bundle();
    tile.metaData.putString("com.android.settings.intent.action", "TestAction");
    tile.userHandle = null;
    mImpl.bindPreferenceToTile(activity, MetricsProto.MetricsEvent.SETTINGS_GESTURES, preference, tile, "123", Preference.DEFAULT_ORDER);
    preference.performClick();
    ShadowActivity shadowActivity = shadowOf(activity);
    final Intent launchIntent = shadowActivity.getNextStartedActivityForResult().intent;
    assertThat(launchIntent.getAction()).isEqualTo("TestAction");
    assertThat(launchIntent.getIntExtra(SettingsActivity.EXTRA_SOURCE_METRICS_CATEGORY, 0)).isEqualTo(MetricsProto.MetricsEvent.SETTINGS_GESTURES);
}
Also used : Preference(android.support.v7.preference.Preference) Bundle(android.os.Bundle) ShadowActivity(org.robolectric.shadows.ShadowActivity) SettingsActivity(com.android.settings.SettingsActivity) Activity(android.app.Activity) Tile(com.android.settingslib.drawer.Tile) ShadowActivity(org.robolectric.shadows.ShadowActivity) Intent(android.content.Intent) ComponentName(android.content.ComponentName) ShadowApplication(org.robolectric.shadows.ShadowApplication) Test(org.junit.Test)

Example 72 with ShadowActivity

use of org.robolectric.shadows.ShadowActivity in project android_packages_apps_Settings by DirtyUnicorns.

the class FingerprintEnrollFindSensorTest method enrollFingerprintTwice_shouldStartOneEnrolling.

@Test
public void enrollFingerprintTwice_shouldStartOneEnrolling() {
    EnrollmentCallback enrollmentCallback = verifyAndCaptureEnrollmentCallback();
    enrollmentCallback.onEnrollmentProgress(123);
    // A second enroll should be a no-op
    enrollmentCallback.onEnrollmentProgress(123);
    ShadowActivity shadowActivity = Shadows.shadowOf(mActivity);
    IntentForResult startedActivity = shadowActivity.getNextStartedActivityForResult();
    assertThat(startedActivity).named("Next activity 1").isNotNull();
    assertThat(startedActivity.intent.getComponent()).isEqualTo(new ComponentName(application, FingerprintEnrollEnrolling.class));
    // Should only start one next activity
    assertThat(shadowActivity.getNextStartedActivityForResult()).named("Next activity 2").isNull();
}
Also used : ShadowActivity(org.robolectric.shadows.ShadowActivity) ComponentName(android.content.ComponentName) IntentForResult(org.robolectric.shadows.ShadowActivity.IntentForResult) EnrollmentCallback(android.hardware.fingerprint.FingerprintManager.EnrollmentCallback) Test(org.junit.Test)

Example 73 with ShadowActivity

use of org.robolectric.shadows.ShadowActivity in project android_packages_apps_Settings by DirtyUnicorns.

the class FingerprintSuggestionActivityTest method testKeyguardSecure_shouldFinishWithFingerprintResultSkip.

@Test
public void testKeyguardSecure_shouldFinishWithFingerprintResultSkip() {
    getShadowKeyguardManager().setIsKeyguardSecure(true);
    mController.create().resume();
    final Button cancelButton = mController.get().findViewById(R.id.fingerprint_cancel_button);
    assertThat(cancelButton.getText().toString()).isEqualTo("Cancel");
    assertThat(cancelButton.getVisibility()).named("Cancel visible").isEqualTo(View.VISIBLE);
    cancelButton.performClick();
    ShadowActivity shadowActivity = Shadows.shadowOf(mController.get());
    assertThat(mController.get().isFinishing()).named("Is finishing").isTrue();
    assertThat(shadowActivity.getResultCode()).named("Result code").isEqualTo(Activity.RESULT_CANCELED);
}
Also used : Button(android.widget.Button) ShadowActivity(org.robolectric.shadows.ShadowActivity) Test(org.junit.Test)

Example 74 with ShadowActivity

use of org.robolectric.shadows.ShadowActivity in project android_packages_apps_Settings by DirtyUnicorns.

the class SetupFingerprintEnrollIntroductionTest method testCancelClicked_shouldSetIntentDataIfLockScreenAdded.

@Test
public void testCancelClicked_shouldSetIntentDataIfLockScreenAdded() {
    getShadowKeyguardManager().setIsKeyguardSecure(false);
    SetupFingerprintEnrollIntroduction activity = mController.create().resume().get();
    final Button skipButton = activity.findViewById(R.id.fingerprint_cancel_button);
    getShadowKeyguardManager().setIsKeyguardSecure(true);
    skipButton.performClick();
    ShadowActivity shadowActivity = Shadows.shadowOf(activity);
    assertThat(shadowActivity.getResultIntent()).isNotNull();
    assertThat(shadowActivity.getResultIntent().hasExtra(SetupChooseLockGenericFragment.EXTRA_PASSWORD_QUALITY)).isTrue();
}
Also used : Button(android.widget.Button) ShadowActivity(org.robolectric.shadows.ShadowActivity) Test(org.junit.Test)

Example 75 with ShadowActivity

use of org.robolectric.shadows.ShadowActivity in project android_packages_apps_Settings by DirtyUnicorns.

the class SetupFingerprintEnrollIntroductionTest method testKeyguardSecure_shouldFinishWithFingerprintResultSkip.

@Test
public void testKeyguardSecure_shouldFinishWithFingerprintResultSkip() {
    getShadowKeyguardManager().setIsKeyguardSecure(true);
    mController.create().resume();
    final Button skipButton = mController.get().findViewById(R.id.fingerprint_cancel_button);
    assertThat(skipButton.getVisibility()).named("Skip visible").isEqualTo(View.VISIBLE);
    skipButton.performClick();
    ShadowActivity shadowActivity = Shadows.shadowOf(mController.get());
    assertThat(mController.get().isFinishing()).named("Is finishing").isTrue();
    assertThat(shadowActivity.getResultCode()).named("Result code").isEqualTo(FingerprintEnrollBase.RESULT_SKIP);
}
Also used : Button(android.widget.Button) ShadowActivity(org.robolectric.shadows.ShadowActivity) Test(org.junit.Test)

Aggregations

ShadowActivity (org.robolectric.shadows.ShadowActivity)343 Test (org.junit.Test)330 Intent (android.content.Intent)163 ComponentName (android.content.ComponentName)100 Button (android.widget.Button)67 Config (org.robolectric.annotation.Config)53 IntentForResult (org.robolectric.shadows.ShadowActivity.IntentForResult)53 Activity (android.app.Activity)41 EnrollmentCallback (android.hardware.fingerprint.FingerprintManager.EnrollmentCallback)33 Bundle (android.os.Bundle)32 PartnerCustomizationLayout (com.google.android.setupcompat.PartnerCustomizationLayout)30 FooterBarMixin (com.google.android.setupcompat.template.FooterBarMixin)20 FragmentActivity (androidx.fragment.app.FragmentActivity)11 Tile (com.android.settingslib.drawer.Tile)11 Settings (com.android.settings.Settings)10 ContextualCardsFragment (com.android.settings.homepage.contextualcards.ContextualCardsFragment)10 IntentBuilder (com.android.settings.password.ChooseLockPassword.IntentBuilder)7 SetupChooseLockPasswordFragment (com.android.settings.password.SetupChooseLockPassword.SetupChooseLockPasswordFragment)7 ShadowIntent (org.robolectric.shadows.ShadowIntent)7 Preference (android.support.v7.preference.Preference)6