| Index: chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc
|
| diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc b/chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc
|
| index ed403f883829904767f8ac04582291ea9c4622ea..9a5eeb69a26cfa6bc5b3d2ff08b047a73189a758 100644
|
| --- a/chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc
|
| +++ b/chrome/browser/extensions/api/webstore_private/webstore_private_apitest.cc
|
| @@ -21,18 +21,11 @@
|
| #include "chrome/browser/extensions/extension_service.h"
|
| #include "chrome/browser/extensions/webstore_installer.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| -#include "chrome/browser/signin/fake_profile_oauth2_token_service.h"
|
| -#include "chrome/browser/signin/fake_profile_oauth2_token_service_builder.h"
|
| -#include "chrome/browser/signin/fake_signin_manager.h"
|
| -#include "chrome/browser/signin/profile_oauth2_token_service_factory.h"
|
| -#include "chrome/browser/signin/signin_manager_factory.h"
|
| #include "chrome/browser/ui/browser.h"
|
| #include "chrome/browser/ui/tabs/tab_strip_model.h"
|
| #include "chrome/common/chrome_switches.h"
|
| #include "chrome/test/base/ui_test_utils.h"
|
| #include "components/keyed_service/content/browser_context_dependency_manager.h"
|
| -#include "components/signin/core/browser/signin_manager.h"
|
| -#include "components/signin/core/browser/test_signin_client.h"
|
| #include "content/public/browser/gpu_data_manager.h"
|
| #include "content/public/browser/notification_observer.h"
|
| #include "content/public/browser/notification_registrar.h"
|
| @@ -103,9 +96,7 @@ class WebstoreInstallListener : public WebstoreInstaller::Delegate {
|
| // A base class for tests below.
|
| class ExtensionWebstorePrivateApiTest : public ExtensionApiTest {
|
| public:
|
| - ExtensionWebstorePrivateApiTest()
|
| - : signin_manager_(NULL),
|
| - token_service_(NULL) {}
|
| + ExtensionWebstorePrivateApiTest() {}
|
| virtual ~ExtensionWebstorePrivateApiTest() {}
|
|
|
| virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
|
| @@ -123,24 +114,6 @@ class ExtensionWebstorePrivateApiTest : public ExtensionApiTest {
|
| host_resolver()->AddRule("www.example.com", "127.0.0.1");
|
| ASSERT_TRUE(StartSpawnedTestServer());
|
| ExtensionInstallUI::set_disable_failure_ui_for_tests();
|
| -
|
| - will_create_browser_context_services_subscription_ =
|
| - BrowserContextDependencyManager::GetInstance()->
|
| - RegisterWillCreateBrowserContextServicesCallbackForTesting(
|
| - base::Bind(
|
| - &ExtensionWebstorePrivateApiTest::
|
| - OnWillCreateBrowserContextServices,
|
| - base::Unretained(this))).Pass();
|
| - }
|
| -
|
| - void OnWillCreateBrowserContextServices(content::BrowserContext* context) {
|
| - // Replace the signin manager and token service with fakes. Do this ahead of
|
| - // creating the browser so that a bunch of classes don't register as
|
| - // observers and end up needing to unregister when the fake is substituted.
|
| - SigninManagerFactory::GetInstance()->SetTestingFactory(
|
| - context, &FakeSigninManagerBase::Build);
|
| - ProfileOAuth2TokenServiceFactory::GetInstance()->SetTestingFactory(
|
| - context, &BuildFakeProfileOAuth2TokenService);
|
| }
|
|
|
| virtual void SetUpOnMainThread() OVERRIDE {
|
| @@ -149,17 +122,6 @@ class ExtensionWebstorePrivateApiTest : public ExtensionApiTest {
|
| ExtensionInstallPrompt::g_auto_confirm_for_tests =
|
| ExtensionInstallPrompt::ACCEPT;
|
|
|
| - // Grab references to the fake signin manager and token service.
|
| - signin_manager_ =
|
| - static_cast<FakeSigninManagerForTesting*>(
|
| - SigninManagerFactory::GetInstance()->GetForProfile(profile()));
|
| - ASSERT_TRUE(signin_manager_);
|
| - token_service_ =
|
| - static_cast<FakeProfileOAuth2TokenService*>(
|
| - ProfileOAuth2TokenServiceFactory::GetInstance()->GetForProfile(
|
| - profile()));
|
| - ASSERT_TRUE(token_service_);
|
| -
|
| ASSERT_TRUE(webstore_install_dir_.CreateUniqueTempDir());
|
| webstore_install_dir_copy_ = webstore_install_dir_.path();
|
| WebstoreInstaller::SetDownloadDirectoryForTests(
|
| @@ -204,21 +166,6 @@ class ExtensionWebstorePrivateApiTest : public ExtensionApiTest {
|
| #endif
|
| }
|
|
|
| - // Navigates to |page| and waits for the API call.
|
| - void StartSignInTest(const std::string& page) {
|
| - ui_test_utils::NavigateToURL(browser(), GetTestServerURL(page));
|
| -
|
| - // Wait for the API to be called. A simple way to wait for this is to run
|
| - // some other JavaScript in the page and wait for a round-trip back to the
|
| - // browser process.
|
| - bool result = false;
|
| - ASSERT_TRUE(
|
| - content::ExecuteScriptAndExtractBool(
|
| - GetWebContents(), "window.domAutomationController.send(true)",
|
| - &result));
|
| - ASSERT_TRUE(result);
|
| - }
|
| -
|
| content::WebContents* GetWebContents() {
|
| return browser()->tab_strip_model()->GetActiveWebContents();
|
| }
|
| @@ -227,13 +174,7 @@ class ExtensionWebstorePrivateApiTest : public ExtensionApiTest {
|
| return ExtensionSystem::Get(browser()->profile())->extension_service();
|
| }
|
|
|
| - FakeSigninManagerForTesting* signin_manager_;
|
| - FakeProfileOAuth2TokenService* token_service_;
|
| -
|
| private:
|
| - scoped_ptr<base::CallbackList<void(content::BrowserContext*)>::Subscription>
|
| - will_create_browser_context_services_subscription_;
|
| -
|
| base::ScopedTempDir webstore_install_dir_;
|
| // WebstoreInstaller needs a reference to a FilePath when setting the download
|
| // directory for testing.
|
| @@ -458,133 +399,6 @@ IN_PROC_BROWSER_TEST_F(ExtensionWebstoreGetWebGLStatusTest, Blocked) {
|
| RunTest(webgl_allowed);
|
| }
|
|
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_UserGestureRequired) {
|
| - GURL page_url = GetTestServerURL("sign_in_user_gesture_required.html");
|
| - ASSERT_TRUE(RunPageTest(page_url.spec()));
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_MissingContinueUrl) {
|
| - GURL page_url = GetTestServerURL("sign_in_missing_continue_url.html");
|
| - ASSERT_TRUE(RunPageTest(page_url.spec()));
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_InvalidContinueUrl) {
|
| - GURL page_url = GetTestServerURL("sign_in_invalid_continue_url.html");
|
| - ASSERT_TRUE(RunPageTest(page_url.spec()));
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_ContinueUrlOnDifferentOrigin) {
|
| - GURL page_url =
|
| - GetTestServerURL("sign_in_continue_url_on_different_origin.html");
|
| - ASSERT_TRUE(RunPageTest(page_url.spec()));
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_DisallowedInIncognito) {
|
| - // Make sure that the test is testing something more than the absence of a
|
| - // sign-in manager for this profile.
|
| - ASSERT_TRUE(SigninManagerFactory::GetForProfile(profile()));
|
| -
|
| - GURL page_url =
|
| - GetTestServerURL("sign_in_disallowed_in_incognito.html");
|
| - ASSERT_TRUE(
|
| - RunPageTest(page_url.spec(), ExtensionApiTest::kFlagUseIncognito));
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_DisabledWhenWebBasedSigninIsEnabled) {
|
| - // Make sure that the test is testing something more than the absence of a
|
| - // sign-in manager for this profile.
|
| - ASSERT_TRUE(SigninManagerFactory::GetForProfile(profile()));
|
| -
|
| - CommandLine::ForCurrentProcess()->AppendSwitch(
|
| - switches::kEnableWebBasedSignin);
|
| - GURL page_url = GetTestServerURL(
|
| - "sign_in_disabled_when_web_based_signin_is_enabled.html");
|
| - ASSERT_TRUE(RunPageTest(page_url.spec()));
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_AlreadySignedIn) {
|
| - signin_manager_->SetAuthenticatedUsername("user@example.com");
|
| - GURL page_url = GetTestServerURL("sign_in_already_signed_in.html");
|
| - ASSERT_TRUE(RunPageTest(page_url.spec()));
|
| -}
|
| -
|
| -// The FakeSignInManager class is not implemented for ChromeOS, so there's no
|
| -// straightforward way to test these flows on that platform.
|
| -#if !defined(OS_CHROMEOS)
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_AuthInProgress_Fails) {
|
| - // Initiate an authentication that will be in progress when the sign-in API is
|
| - // called.
|
| - signin_manager_->set_auth_in_progress("user@example.com");
|
| -
|
| - // Navigate to the page, which will cause the sign-in API to be called.
|
| - // Then, complete the authentication in a failed state.
|
| - ResultCatcher catcher;
|
| - StartSignInTest("sign_in_auth_in_progress_fails.html");
|
| - signin_manager_->FailSignin(GoogleServiceAuthError::AuthErrorNone());
|
| - ASSERT_TRUE(catcher.GetNextResult());
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_AuthInProgress_MergeSessionFails) {
|
| - // Initiate an authentication that will be in progress when the sign-in API is
|
| - // called.
|
| - signin_manager_->set_auth_in_progress("user@example.com");
|
| -
|
| - // Navigate to the page, which will cause the sign-in API to be called.
|
| - // Then, complete the authentication in a successful state.
|
| - ResultCatcher catcher;
|
| - StartSignInTest("sign_in_auth_in_progress_merge_session_fails.html");
|
| - signin_manager_->CompletePendingSignin();
|
| - token_service_->IssueRefreshTokenForUser("user@example.com", "token");
|
| - signin_manager_->NotifyMergeSessionObservers(
|
| - GoogleServiceAuthError(GoogleServiceAuthError::SERVICE_UNAVAILABLE));
|
| - ASSERT_TRUE(catcher.GetNextResult());
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_AuthInProgress_Succeeds) {
|
| - // Initiate an authentication that will be in progress when the sign-in API is
|
| - // called.
|
| - signin_manager_->set_auth_in_progress("user@example.com");
|
| -
|
| - // Navigate to the page, which will cause the sign-in API to be called.
|
| - // Then, complete the authentication in a successful state.
|
| - ResultCatcher catcher;
|
| - StartSignInTest("sign_in_auth_in_progress_succeeds.html");
|
| - signin_manager_->CompletePendingSignin();
|
| - token_service_->IssueRefreshTokenForUser("user@example.com", "token");
|
| - signin_manager_->NotifyMergeSessionObservers(
|
| - GoogleServiceAuthError::AuthErrorNone());
|
| - ASSERT_TRUE(catcher.GetNextResult());
|
| -}
|
| -#endif // !defined (OS_CHROMEOS)
|
| -
|
| -IN_PROC_BROWSER_TEST_F(ExtensionWebstorePrivateApiTest,
|
| - SignIn_RedirectToSignIn) {
|
| - GURL signin_url(
|
| - "chrome://chrome-signin/?source=5&"
|
| - "continue=http%3A%2F%2Fwww.example.com%3A" +
|
| - base::IntToString(test_server()->host_port_pair().port()) +
|
| - "%2Fcontinue");
|
| - ui_test_utils::UrlLoadObserver observer(
|
| - signin_url,
|
| - content::Source<content::NavigationController>(
|
| - &GetWebContents()->GetController()));
|
| - StartSignInTest("sign_in_redirect_to_sign_in.html");
|
| - observer.Wait();
|
| -
|
| - // TODO(isherman): Also test the redirect back to the continue URL once
|
| - // sign-in completes?
|
| -}
|
| -
|
| class EphemeralAppWebstorePrivateApiTest
|
| : public ExtensionWebstorePrivateApiTest {
|
| public:
|
|
|