@Override public ActivityResult getActivityResult() { checkNotNull(controller); checkState(controller.get().isFinishing(), "You must finish your Activity first"); ShadowActivity shadowActivity = Shadow.extract(controller.get()); return new ActivityResult(shadowActivity.getResultCode(), shadowActivity.getResultIntent()); }
@Test public void testCancel() { activity.onBackPressed(); assertThat(shadowOf(activity).getResultCode()).isEqualTo(Activity.RESULT_CANCELED); }
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @Test public void testOk() { activity.findViewById(R.id.button_ok).performClick(); assertThat(shadowOf(activity).getResultCode()).isEqualTo(Activity.RESULT_OK); assertThat(activity).isFinishing(); assertThat(shadowOf((JobScheduler) activity.getSystemService(Context.JOB_SCHEDULER_SERVICE)) .getAllPendingJobs()).isNotEmpty(); }
@Override public ActivityResult getActivityResult() { checkNotNull(controller); checkState(controller.get().isFinishing(), "You must finish your Activity first"); ShadowActivity shadowActivity = Shadow.extract(controller.get()); return new ActivityResult(shadowActivity.getResultCode(), shadowActivity.getResultIntent()); }
@Test public void testOnOptionsItemSelected_postSelected_shouldSetResultCommentAndFinish() { ShadowActivity shadowActivity = Shadows.shadowOf(activity); RoboMenuItem roboMenuItem = new RoboMenuItem(); roboMenuItem.setItemId(R.id.action_post); EditText editText = (EditText) activity.findViewById(R.id.edit_response); editText.setText(POSTED_COMMENT_TEXT); activity.onOptionsItemSelected(roboMenuItem); assertEquals(shadowActivity.getResultIntent().getStringExtra(ReplyActivity .KEY_POSTED_COMMENT), POSTED_COMMENT_TEXT); assertEquals(shadowActivity.getResultCode(), RESULT_OK); assertTrue(shadowActivity.isFinishing()); }
assertEquals(RESULT_OK, mShadowActivity.getResultCode()); Intent intent = mShadowActivity.getResultIntent(); assertNotNull(intent);
@Test public void onShippingInfoSaved_whenOnlyShippingInfo_finishWithSuccess() { Intent intent = new Intent(ApplicationProvider.getApplicationContext(), PaymentFlowActivity.class); PaymentSessionConfig paymentSessionConfig = new PaymentSessionConfig.Builder() .setPrepopulatedShippingInfo(getExampleShippingInfo()) .setShippingMethodsRequired(false) .build(); intent.putExtra(PAYMENT_SESSION_CONFIG, paymentSessionConfig); PaymentSessionData paymentSessionData = new PaymentSessionData(); intent.putExtra(PAYMENT_SESSION_DATA_KEY, paymentSessionData); PaymentFlowActivity paymentFlowActivity = createActivity(intent); final ShadowActivity shadowActivity = shadowOf(paymentFlowActivity); // valid result paymentFlowActivity.onActionSave(); Intent onShippingInfoProcessedValid = new Intent(EVENT_SHIPPING_INFO_PROCESSED); onShippingInfoProcessedValid.putExtra(EXTRA_IS_SHIPPING_INFO_VALID, true); LocalBroadcastManager.getInstance(ApplicationProvider.getApplicationContext()) .sendBroadcast(onShippingInfoProcessedValid); Intent shippingInfoSaved = new Intent(EVENT_SHIPPING_INFO_SAVED); LocalBroadcastManager.getInstance(ApplicationProvider.getApplicationContext()) .sendBroadcast(shippingInfoSaved); assertTrue(paymentFlowActivity.isFinishing()); assertEquals(shadowActivity.getResultCode(), Activity.RESULT_OK); PaymentSessionData resultSessionData = shadowActivity.getResultIntent().getExtras() .getParcelable(PAYMENT_SESSION_DATA_KEY); assertEquals(resultSessionData.getShippingInformation(), getExampleShippingInfo()); }
assertEquals(RESULT_OK, mShadowActivity.getResultCode()); Intent intent = mShadowActivity.getResultIntent();
assertEquals(RESULT_OK, mShadowActivity.getResultCode()); Intent intent = mShadowActivity.getResultIntent();
assertEquals(RESULT_OK, mShadowActivity.getResultCode()); Intent intent = mShadowActivity.getResultIntent();