Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(219)

Unified Diff: chrome/android/junit/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencerTest.java

Issue 2519853004: Allow fetching variations while FRE is showing on Android first run. (Closed)
Patch Set: Fix recordForegroundStartTime(). Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/metrics/UmaUtils.java ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/junit/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencerTest.java
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencerTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencerTest.java
index 1f33d3469d0784978dc2764ba18ddc16683a9e60..37a1c0772f53d3dce1f8b50fb3e3ff6ea1865626 100644
--- a/chrome/android/junit/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencerTest.java
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencerTest.java
@@ -13,9 +13,6 @@ import android.accounts.Account;
import android.app.Activity;
import android.os.Bundle;
-import org.chromium.base.BaseChromiumApplication;
-import org.chromium.base.test.util.Feature;
-import org.chromium.testing.local.LocalRobolectricTestRunner;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -25,6 +22,10 @@ import org.robolectric.annotation.Config;
import org.robolectric.shadows.multidex.ShadowMultiDex;
import org.robolectric.util.ActivityController;
+import org.chromium.base.BaseChromiumApplication;
+import org.chromium.base.test.util.Feature;
+import org.chromium.testing.local.LocalRobolectricTestRunner;
+
/**
* Tests FirstRunFlowSequencer which contains the core logic of what should be shown during the
* first run.
@@ -62,6 +63,7 @@ public class FirstRunFlowSequencerTest {
@Override
public void onFlowIsKnown(Bundle freProperties) {
calledOnFlowIsKnown = true;
+ if (freProperties != null) onNativeInitialized(freProperties);
returnedBundle = freProperties;
}
@@ -122,7 +124,10 @@ public class FirstRunFlowSequencerTest {
@Before
public void setUp() throws Exception {
mActivityController = Robolectric.buildActivity(Activity.class);
- mSequencer = new TestFirstRunFlowSequencer(mActivityController.setup().get(), new Bundle());
+ Bundle launchProperties = new Bundle();
+ launchProperties.putBoolean(FirstRunActivity.EXTRA_USE_FRE_FLOW_SEQUENCER, true);
+ mSequencer =
+ new TestFirstRunFlowSequencer(mActivityController.setup().get(), launchProperties);
}
@After
@@ -133,16 +138,18 @@ public class FirstRunFlowSequencerTest {
@Test
@Feature({"FirstRun"})
public void testFirstRunComplete() {
+ Account[] accounts = new Account[1];
+ accounts[0] = new Account(DEFAULT_ACCOUNT, GOOGLE_ACCOUNT_TYPE);
mSequencer.isFirstRunFlowComplete = true;
mSequencer.isSignedIn = false;
mSequencer.isSyncAllowed = true;
- mSequencer.googleAccounts = null;
+ mSequencer.googleAccounts = accounts;
mSequencer.hasAnyUserSeenToS = true;
mSequencer.shouldSkipFirstUseHints = false;
mSequencer.isFirstRunEulaAccepted = true;
- mSequencer.processFreEnvironment(
- false, // androidEduDevice
+ mSequencer.initializeSharedState(false, // androidEduDevice
false); // hasChildAccount
+ mSequencer.processFreEnvironmentPreNative();
assertTrue(mSequencer.calledOnFlowIsKnown);
assertNull(mSequencer.returnedBundle);
assertFalse(mSequencer.calledSetDefaultMetricsAndCrashReporting);
@@ -158,9 +165,9 @@ public class FirstRunFlowSequencerTest {
mSequencer.hasAnyUserSeenToS = false;
mSequencer.shouldSkipFirstUseHints = false;
mSequencer.shouldShowDataReductionPage = false;
- mSequencer.processFreEnvironment(
- false, // androidEduDevice
+ mSequencer.initializeSharedState(false, // androidEduDevice
false); // hasChildAccount
+ mSequencer.processFreEnvironmentPreNative();
assertTrue(mSequencer.calledOnFlowIsKnown);
assertTrue(mSequencer.returnedBundle.getBoolean(FirstRunActivity.SHOW_WELCOME_PAGE));
assertTrue(mSequencer.returnedBundle.getBoolean(FirstRunActivity.SHOW_SIGNIN_PAGE));
@@ -184,9 +191,9 @@ public class FirstRunFlowSequencerTest {
mSequencer.hasAnyUserSeenToS = true;
mSequencer.shouldSkipFirstUseHints = false;
mSequencer.shouldShowDataReductionPage = false;
- mSequencer.processFreEnvironment(
- false, // androidEduDevice
+ mSequencer.initializeSharedState(false, // androidEduDevice
false); // hasChildAccount
+ mSequencer.processFreEnvironmentPreNative();
assertTrue(mSequencer.calledOnFlowIsKnown);
assertTrue(mSequencer.returnedBundle.getBoolean(FirstRunActivity.SHOW_WELCOME_PAGE));
assertTrue(mSequencer.returnedBundle.getBoolean(FirstRunActivity.SHOW_SIGNIN_PAGE));
@@ -214,9 +221,9 @@ public class FirstRunFlowSequencerTest {
mSequencer.hasAnyUserSeenToS = false;
mSequencer.shouldSkipFirstUseHints = false;
mSequencer.shouldShowDataReductionPage = false;
- mSequencer.processFreEnvironment(
- false, // androidEduDevice
+ mSequencer.initializeSharedState(false, // androidEduDevice
true); // hasChildAccount
+ mSequencer.processFreEnvironmentPreNative();
assertTrue(mSequencer.calledOnFlowIsKnown);
assertTrue(mSequencer.returnedBundle.getBoolean(FirstRunActivity.SHOW_WELCOME_PAGE));
assertTrue(mSequencer.returnedBundle.getBoolean(FirstRunActivity.SHOW_SIGNIN_PAGE));
@@ -242,9 +249,9 @@ public class FirstRunFlowSequencerTest {
mSequencer.hasAnyUserSeenToS = false;
mSequencer.shouldSkipFirstUseHints = false;
mSequencer.shouldShowDataReductionPage = true;
- mSequencer.processFreEnvironment(
- false, // androidEduDevice
+ mSequencer.initializeSharedState(false, // androidEduDevice
false); // hasChildAccount
+ mSequencer.processFreEnvironmentPreNative();
assertTrue(mSequencer.calledOnFlowIsKnown);
assertTrue(mSequencer.returnedBundle.getBoolean(FirstRunActivity.SHOW_WELCOME_PAGE));
assertTrue(mSequencer.returnedBundle.getBoolean(FirstRunActivity.SHOW_SIGNIN_PAGE));
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/metrics/UmaUtils.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698