Merge "allow optionally skipping of initial launch" into nyc-dev

This commit is contained in:
TreeHugger Robot
2016-05-06 04:44:16 +00:00
committed by Android (Google) Code Review

View File

@@ -60,6 +60,7 @@ public class AppLaunch extends InstrumentationTestCase {
// optional parameter: comma separated list of required account types before proceeding // optional parameter: comma separated list of required account types before proceeding
// with the app launch // with the app launch
private static final String KEY_REQUIRED_ACCOUNTS = "required_accounts"; private static final String KEY_REQUIRED_ACCOUNTS = "required_accounts";
private static final String KEY_SKIP_INITIAL_LAUNCH = "skip_initial_launch";
private static final String WEARABLE_ACTION_GOOGLE = private static final String WEARABLE_ACTION_GOOGLE =
"com.google.android.wearable.action.GOOGLE"; "com.google.android.wearable.action.GOOGLE";
private static final int INITIAL_LAUNCH_IDLE_TIMEOUT = 60000; //60s to allow app to idle private static final int INITIAL_LAUNCH_IDLE_TIMEOUT = 60000; //60s to allow app to idle
@@ -74,6 +75,7 @@ public class AppLaunch extends InstrumentationTestCase {
private int mLaunchIterations = 10; private int mLaunchIterations = 10;
private Bundle mResult = new Bundle(); private Bundle mResult = new Bundle();
private Set<String> mRequiredAccounts; private Set<String> mRequiredAccounts;
private boolean mSkipInitialLaunch = false;
@Override @Override
protected void setUp() throws Exception { protected void setUp() throws Exception {
@@ -97,6 +99,7 @@ public class AppLaunch extends InstrumentationTestCase {
parseArgs(args); parseArgs(args);
checkAccountSignIn(); checkAccountSignIn();
if (!mSkipInitialLaunch) {
// do initial app launch, without force stopping // do initial app launch, without force stopping
for (String app : mNameToResultKey.keySet()) { for (String app : mNameToResultKey.keySet()) {
long launchTime = startApp(app, false); long launchTime = startApp(app, false);
@@ -112,6 +115,7 @@ public class AppLaunch extends InstrumentationTestCase {
closeApp(app, false); closeApp(app, false);
sleep(BETWEEN_LAUNCH_SLEEP_TIMEOUT); sleep(BETWEEN_LAUNCH_SLEEP_TIMEOUT);
} }
}
// do the real app launch now // do the real app launch now
for (int i = 0; i < mLaunchIterations; i++) { for (int i = 0; i < mLaunchIterations; i++) {
for (String app : mNameToResultKey.keySet()) { for (String app : mNameToResultKey.keySet()) {
@@ -174,6 +178,7 @@ public class AppLaunch extends InstrumentationTestCase {
mRequiredAccounts.add(accountType); mRequiredAccounts.add(accountType);
} }
} }
mSkipInitialLaunch = "true".equals(args.getString(KEY_SKIP_INITIAL_LAUNCH));
} }
private boolean hasLeanback(Context context) { private boolean hasLeanback(Context context) {