Chromium Code Reviews| Index: chrome/test/android/javatests/src/org/chromium/chrome/test/util/parameters/AddFakeAccountToAppParameter.java |
| diff --git a/chrome/test/android/javatests/src/org/chromium/chrome/test/util/parameters/AddFakeAccountToAppParameter.java b/chrome/test/android/javatests/src/org/chromium/chrome/test/util/parameters/AddFakeAccountToAppParameter.java |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..d838d6a8891fc9ea896b6ed1231a7495a64ef2f2 |
| --- /dev/null |
| +++ b/chrome/test/android/javatests/src/org/chromium/chrome/test/util/parameters/AddFakeAccountToAppParameter.java |
| @@ -0,0 +1,55 @@ |
| +// Copyright 2015 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +package org.chromium.chrome.test.util.parameters; |
| + |
| +import android.app.Instrumentation; |
| + |
| +import org.chromium.base.test.util.parameter.BaseParameter; |
| +import org.chromium.base.test.util.parameter.Parameter; |
| +import org.chromium.chrome.test.util.ChromeSigninUtils; |
| +import org.chromium.sync.signin.ChromeSigninController; |
| + |
| +/** |
| + * Adds a fake account to app when this parameter is used. |
| + */ |
| +public class AddFakeAccountToAppParameter extends BaseParameter { |
| + /** Adds a fake test account to app to run test as signed into the app. */ |
| + public static final String PARAMETER_TAG = "add-fake-account-to-app-parameter"; |
| + |
| + /** The {@Parameter.Argument#name()} value. */ |
| + public static final class ARGUMENT { |
| + public static final String USERNAME = "username"; |
| + private static final class DEFAULT { |
| + private static final String USERNAME = "test@google.com"; |
| + } |
| + } |
| + |
| + private ChromeSigninController mSigninController; |
| + private ChromeSigninUtils mSigninUtil; |
| + |
| + public AddFakeAccountToAppParameter(Parameter.Reader parameterReader, |
| + Instrumentation instrumentation) { |
| + super(PARAMETER_TAG, parameterReader); |
| + mSigninController = ChromeSigninController.get(instrumentation.getTargetContext()); |
| + mSigninUtil = new ChromeSigninUtils(instrumentation); |
| + } |
| + |
| + @Override |
| + public void setUp() { |
| + String username = getStringArgument(ARGUMENT.USERNAME, ARGUMENT.DEFAULT.USERNAME); |
| + |
| + mSigninController.clearSignedInUser(); |
|
nyquist
2015/08/20 18:37:54
This only affects Java tests I believe? Maybe add
Sean Kirmani
2015/08/20 21:14:44
Done.
|
| + mSigninUtil.addAccountToApp(username); |
| + } |
| + |
| + @Override |
| + public void tearDown() { |
| + mSigninController.clearSignedInUser(); |
| + } |
| + |
| + public boolean isSignedIn() { |
| + return mSigninController.isSignedIn(); |
| + } |
| +} |