Commit 2f094883 authored by Mario Sanchez Prada's avatar Mario Sanchez Prada Committed by Commit Bot

Convert SyncEngine to IdentityManager::Observer

Converted implementations for GoogleSigninFailed, GoogleSigninSucceeded
and GoogleSignedOut, and updated unit tests accordingly.

Bug: 887457
Change-Id: I9ced1e6e5b91d5b05dd10b4520201b48e202fe75
Reviewed-on: https://chromium-review.googlesource.com/c/1286824Reviewed-by: default avatarColin Blundell <blundell@chromium.org>
Reviewed-by: default avatarTaiju Tsuiki <tzik@chromium.org>
Commit-Queue: Mario Sanchez Prada <mario@igalia.com>
Cr-Commit-Position: refs/heads/master@{#605365}
parent cd05804c
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
#include "chrome/browser/sync_file_system/sync_file_system_service.h" #include "chrome/browser/sync_file_system/sync_file_system_service.h"
#include "chrome/browser/sync_file_system/sync_file_system_service_factory.h" #include "chrome/browser/sync_file_system/sync_file_system_service_factory.h"
#include "components/drive/service/fake_drive_service.h" #include "components/drive/service/fake_drive_service.h"
#include "components/signin/core/browser/account_info.h"
#include "extensions/test/extension_test_message_listener.h" #include "extensions/test/extension_test_message_listener.h"
#include "extensions/test/result_catcher.h" #include "extensions/test/result_catcher.h"
#include "services/identity/public/cpp/identity_manager.h" #include "services/identity/public/cpp/identity_manager.h"
...@@ -28,6 +29,9 @@ namespace sync_file_system { ...@@ -28,6 +29,9 @@ namespace sync_file_system {
namespace { namespace {
const char kGaiaId[] = "gaia_id";
const char kEmail[] = "email@example.com";
class FakeDriveServiceFactory class FakeDriveServiceFactory
: public drive_backend::SyncEngine::DriveServiceFactory { : public drive_backend::SyncEngine::DriveServiceFactory {
public: public:
...@@ -117,8 +121,9 @@ class SyncFileSystemTest : public extensions::PlatformAppBrowserTest, ...@@ -117,8 +121,9 @@ class SyncFileSystemTest : public extensions::PlatformAppBrowserTest,
} }
void SignIn() { void SignIn() {
fake_signin_manager_->SetAuthenticatedAccountInfo("12345", "tester"); fake_signin_manager_->SetAuthenticatedAccountInfo(kGaiaId, kEmail);
sync_engine()->GoogleSigninSucceeded("12345", "tester"); sync_engine()->OnPrimaryAccountSet(
fake_signin_manager_->GetAuthenticatedAccountInfo());
} }
void SetSyncEnabled(bool enabled) { void SetSyncEnabled(bool enabled) {
...@@ -169,7 +174,10 @@ IN_PROC_BROWSER_TEST_F(SyncFileSystemTest, AuthorizationTest) { ...@@ -169,7 +174,10 @@ IN_PROC_BROWSER_TEST_F(SyncFileSystemTest, AuthorizationTest) {
// service. Wait for the completion and resume the app. // service. Wait for the completion and resume the app.
WaitUntilIdle(); WaitUntilIdle();
sync_engine()->GoogleSignedOut("test_account", std::string()); AccountInfo info;
info.account_id = kGaiaId;
info.account_id = kEmail;
sync_engine()->OnPrimaryAccountCleared(info);
foo_created.Reply("resume"); foo_created.Reply("resume");
ASSERT_TRUE(bar_created.WaitUntilSatisfied()); ASSERT_TRUE(bar_created.WaitUntilSatisfied());
...@@ -182,7 +190,7 @@ IN_PROC_BROWSER_TEST_F(SyncFileSystemTest, AuthorizationTest) { ...@@ -182,7 +190,7 @@ IN_PROC_BROWSER_TEST_F(SyncFileSystemTest, AuthorizationTest) {
EXPECT_EQ(REMOTE_SERVICE_AUTHENTICATION_REQUIRED, EXPECT_EQ(REMOTE_SERVICE_AUTHENTICATION_REQUIRED,
sync_engine()->GetCurrentState()); sync_engine()->GetCurrentState());
sync_engine()->GoogleSigninSucceeded("test_account", "tester"); sync_engine()->OnPrimaryAccountSet(info);
WaitUntilIdle(); WaitUntilIdle();
bar_created.Reply("resume"); bar_created.Reply("resume");
......
...@@ -244,8 +244,8 @@ SyncEngine::~SyncEngine() { ...@@ -244,8 +244,8 @@ SyncEngine::~SyncEngine() {
Reset(); Reset();
content::GetNetworkConnectionTracker()->RemoveNetworkConnectionObserver(this); content::GetNetworkConnectionTracker()->RemoveNetworkConnectionObserver(this);
if (signin_manager_) if (identity_manager_)
signin_manager_->RemoveObserver(this); identity_manager_->RemoveObserver(this);
if (notification_manager_) if (notification_manager_)
notification_manager_->RemoveObserver(this); notification_manager_->RemoveObserver(this);
} }
...@@ -706,19 +706,19 @@ void SyncEngine::OnConnectionChanged(network::mojom::ConnectionType type) { ...@@ -706,19 +706,19 @@ void SyncEngine::OnConnectionChanged(network::mojom::ConnectionType type) {
} }
} }
void SyncEngine::GoogleSigninFailed(const GoogleServiceAuthError& error) { void SyncEngine::OnPrimaryAccountSigninFailed(
const GoogleServiceAuthError& error) {
Reset(); Reset();
UpdateServiceState(REMOTE_SERVICE_AUTHENTICATION_REQUIRED, UpdateServiceState(REMOTE_SERVICE_AUTHENTICATION_REQUIRED,
"Failed to sign in."); "Failed to sign in.");
} }
void SyncEngine::GoogleSigninSucceeded(const std::string& account_id, void SyncEngine::OnPrimaryAccountSet(const AccountInfo& primary_account_info) {
const std::string& username) {
Initialize(); Initialize();
} }
void SyncEngine::GoogleSignedOut(const std::string& account_id, void SyncEngine::OnPrimaryAccountCleared(
const std::string& username) { const AccountInfo& previous_primary_account_info) {
Reset(); Reset();
UpdateServiceState(REMOTE_SERVICE_AUTHENTICATION_REQUIRED, UpdateServiceState(REMOTE_SERVICE_AUTHENTICATION_REQUIRED,
"User signed out."); "User signed out.");
...@@ -758,8 +758,8 @@ SyncEngine::SyncEngine( ...@@ -758,8 +758,8 @@ SyncEngine::SyncEngine(
DCHECK(sync_file_system_dir_.IsAbsolute()); DCHECK(sync_file_system_dir_.IsAbsolute());
if (notification_manager_) if (notification_manager_)
notification_manager_->AddObserver(this); notification_manager_->AddObserver(this);
if (signin_manager_) if (identity_manager_)
signin_manager_->AddObserver(this); identity_manager_->AddObserver(this);
content::GetNetworkConnectionTracker()->AddNetworkConnectionObserver(this); content::GetNetworkConnectionTracker()->AddNetworkConnectionObserver(this);
} }
......
...@@ -20,7 +20,9 @@ ...@@ -20,7 +20,9 @@
#include "chrome/browser/sync_file_system/sync_direction.h" #include "chrome/browser/sync_file_system/sync_direction.h"
#include "components/drive/drive_notification_observer.h" #include "components/drive/drive_notification_observer.h"
#include "components/drive/service/drive_service_interface.h" #include "components/drive/service/drive_service_interface.h"
#include "components/signin/core/browser/account_info.h"
#include "components/signin/core/browser/signin_manager_base.h" #include "components/signin/core/browser/signin_manager_base.h"
#include "services/identity/public/cpp/identity_manager.h"
#include "services/network/public/cpp/network_connection_tracker.h" #include "services/network/public/cpp/network_connection_tracker.h"
#include "services/network/public/cpp/shared_url_loader_factory.h" #include "services/network/public/cpp/shared_url_loader_factory.h"
...@@ -38,10 +40,6 @@ namespace extensions { ...@@ -38,10 +40,6 @@ namespace extensions {
class ExtensionServiceInterface; class ExtensionServiceInterface;
} }
namespace identity {
class IdentityManager;
}
namespace leveldb { namespace leveldb {
class Env; class Env;
} }
...@@ -68,8 +66,8 @@ class SyncEngine ...@@ -68,8 +66,8 @@ class SyncEngine
public LocalChangeProcessor, public LocalChangeProcessor,
public drive::DriveNotificationObserver, public drive::DriveNotificationObserver,
public drive::DriveServiceObserver, public drive::DriveServiceObserver,
public network::NetworkConnectionTracker::NetworkConnectionObserver, public identity::IdentityManager::Observer,
public SigninManagerBase::Observer { public network::NetworkConnectionTracker::NetworkConnectionObserver {
public: public:
typedef RemoteFileSyncService::Observer SyncServiceObserver; typedef RemoteFileSyncService::Observer SyncServiceObserver;
...@@ -149,12 +147,12 @@ class SyncEngine ...@@ -149,12 +147,12 @@ class SyncEngine
// network::NetworkConnectionTracker::NetworkConnectionObserver overrides. // network::NetworkConnectionTracker::NetworkConnectionObserver overrides.
void OnConnectionChanged(network::mojom::ConnectionType type) override; void OnConnectionChanged(network::mojom::ConnectionType type) override;
// SigninManagerBase::Observer overrides. // IdentityManager::Observer overrides.
void GoogleSigninFailed(const GoogleServiceAuthError& error) override; void OnPrimaryAccountSet(const AccountInfo& primary_account_info) override;
void GoogleSigninSucceeded(const std::string& account_id, void OnPrimaryAccountCleared(
const std::string& username) override; const AccountInfo& previous_primary_account_info) override;
void GoogleSignedOut(const std::string& account_id, void OnPrimaryAccountSigninFailed(
const std::string& username) override; const GoogleServiceAuthError& error) override;
private: private:
class WorkerObserver; class WorkerObserver;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment