Commit e4d50406 authored by Antonio Gomes's avatar Antonio Gomes Committed by Commit Bot

Add a simple network::mojom::CookieManager implementation to services/network/test

[1], [2] and [3] all have "fake" implementations of network::mojom::CookieManager,
mostly stubbed out.

This CL provides a simple implementation of this interface located in
//services/network/test/test_cookie_manager.cc|h that can be either used
as is (eg by [1] and [2]) or have the relevant methods overridden (eg in [3]).

[1] //services/identity/public/cpp/identity_manager_unittests.cc,
[2] //components/signin/core/browser/test_signin_client.cc
[3] //c/b/chromeos/android_sms/android_sms_app_setup_controller_impl_unittest.cc

For consistency, the newly added class is named TestCookieManager.

This is a follow up of [4].

[4] https://crrev.com/c/1452816/1/services/identity/public/cpp/identity_manager_unittest.cc#96

BUG=926890

Change-Id: Ie1b7b7e3dd6e432f61b91b310614645409294d89
Reviewed-on: https://chromium-review.googlesource.com/c/1456916
Commit-Queue: Antonio Gomes <tonikitoo@igalia.com>
Reviewed-by: default avatarKyle Horimoto <khorimoto@chromium.org>
Reviewed-by: default avatarDavid Roger <droger@chromium.org>
Reviewed-by: default avatarMaks Orlovich <morlovich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#630093}
parent 644837a3
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
#include "extensions/common/extension.h" #include "extensions/common/extension.h"
#include "extensions/common/extension_builder.h" #include "extensions/common/extension_builder.h"
#include "extensions/common/extension_paths.h" #include "extensions/common/extension_paths.h"
#include "services/network/test/test_cookie_manager.h"
#include "testing/gtest/include/gtest/gtest.h" #include "testing/gtest/include/gtest/gtest.h"
namespace chromeos { namespace chromeos {
...@@ -49,7 +50,7 @@ web_app::PendingAppManager::AppInfo GetAppInfoForUrl(const GURL& url) { ...@@ -49,7 +50,7 @@ web_app::PendingAppManager::AppInfo GetAppInfoForUrl(const GURL& url) {
return info; return info;
} }
class FakeCookieManager : public network::mojom::CookieManager { class FakeCookieManager : public network::TestCookieManager {
public: public:
FakeCookieManager() = default; FakeCookieManager() = default;
~FakeCookieManager() override { ~FakeCookieManager() override {
...@@ -103,26 +104,6 @@ class FakeCookieManager : public network::mojom::CookieManager { ...@@ -103,26 +104,6 @@ class FakeCookieManager : public network::mojom::CookieManager {
delete_cookies_calls_.emplace_back(std::move(filter), std::move(callback)); delete_cookies_calls_.emplace_back(std::move(filter), std::move(callback));
} }
void GetAllCookies(GetAllCookiesCallback callback) override {}
void GetCookieList(const GURL& url,
const net::CookieOptions& cookie_options,
GetCookieListCallback callback) override {}
void DeleteCanonicalCookie(const net::CanonicalCookie& cookie,
DeleteCanonicalCookieCallback callback) override {}
void AddCookieChangeListener(
const GURL& url,
const std::string& name,
network::mojom::CookieChangeListenerPtr listener) override {}
void AddGlobalChangeListener(
network::mojom::CookieChangeListenerPtr notification_pointer) override {}
void CloneInterface(
network::mojom::CookieManagerRequest new_interface) override {}
void FlushCookieStore(FlushCookieStoreCallback callback) override {}
void SetContentSettings(
const std::vector<::ContentSettingPatternSource>& settings) override {}
void SetForceKeepSessionState() override {}
void BlockThirdPartyCookies(bool block) override {}
private: private:
std::vector< std::vector<
std::tuple<net::CanonicalCookie, bool, bool, SetCanonicalCookieCallback>> std::tuple<net::CanonicalCookie, bool, bool, SetCanonicalCookieCallback>>
......
...@@ -9,39 +9,9 @@ ...@@ -9,39 +9,9 @@
#include "base/logging.h" #include "base/logging.h"
#include "base/threading/thread_task_runner_handle.h" #include "base/threading/thread_task_runner_handle.h"
#include "services/network/public/cpp/shared_url_loader_factory.h" #include "services/network/public/cpp/shared_url_loader_factory.h"
#include "services/network/test/test_cookie_manager.h"
#include "testing/gtest/include/gtest/gtest.h" #include "testing/gtest/include/gtest/gtest.h"
namespace {
class FakeCookieManager : public network::mojom::CookieManager {
public:
void SetCanonicalCookie(const net::CanonicalCookie& cookie,
bool secure_source,
bool modify_http_only,
SetCanonicalCookieCallback callback) override;
void GetAllCookies(GetAllCookiesCallback callback) override {}
void GetCookieList(const GURL& url,
const net::CookieOptions& cookie_options,
GetCookieListCallback callback) override {}
void DeleteCanonicalCookie(const net::CanonicalCookie& cookie,
DeleteCanonicalCookieCallback callback) override {}
void DeleteCookies(network::mojom::CookieDeletionFilterPtr filter,
DeleteCookiesCallback callback) override {}
void AddCookieChangeListener(
const GURL& url,
const std::string& name,
network::mojom::CookieChangeListenerPtr listener) override {}
void AddGlobalChangeListener(
network::mojom::CookieChangeListenerPtr notification_pointer) override {}
void CloneInterface(
network::mojom::CookieManagerRequest new_interface) override {}
void FlushCookieStore(FlushCookieStoreCallback callback) override {}
void SetContentSettings(
const std::vector<::ContentSettingPatternSource>& settings) override {}
void SetForceKeepSessionState() override {}
void BlockThirdPartyCookies(bool block) override {}
};
} // namespace
TestSigninClient::TestSigninClient(PrefService* pref_service) TestSigninClient::TestSigninClient(PrefService* pref_service)
: shared_factory_( : shared_factory_(
base::MakeRefCounted<network::WeakWrapperSharedURLLoaderFactory>( base::MakeRefCounted<network::WeakWrapperSharedURLLoaderFactory>(
...@@ -59,14 +29,6 @@ PrefService* TestSigninClient::GetPrefs() { ...@@ -59,14 +29,6 @@ PrefService* TestSigninClient::GetPrefs() {
return pref_service_; return pref_service_;
} }
void FakeCookieManager::SetCanonicalCookie(
const net::CanonicalCookie& cookie,
bool secure_source,
bool modify_http_only,
SetCanonicalCookieCallback callback) {
std::move(callback).Run(false);
}
void TestSigninClient::PreSignOut( void TestSigninClient::PreSignOut(
base::OnceCallback<void(SignoutDecision)> on_signout_decision_reached, base::OnceCallback<void(SignoutDecision)> on_signout_decision_reached,
signin_metrics::ProfileSignout signout_source_metric) { signin_metrics::ProfileSignout signout_source_metric) {
...@@ -82,7 +44,7 @@ TestSigninClient::GetURLLoaderFactory() { ...@@ -82,7 +44,7 @@ TestSigninClient::GetURLLoaderFactory() {
network::mojom::CookieManager* TestSigninClient::GetCookieManager() { network::mojom::CookieManager* TestSigninClient::GetCookieManager() {
if (!cookie_manager_) if (!cookie_manager_)
cookie_manager_ = std::make_unique<FakeCookieManager>(); cookie_manager_ = std::make_unique<network::TestCookieManager>();
return cookie_manager_.get(); return cookie_manager_.get();
} }
......
...@@ -2,9 +2,10 @@ ...@@ -2,9 +2,10 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#include "services/identity/public/cpp/identity_manager.h"
#include <vector> #include <vector>
#include "services/identity/public/cpp/identity_manager.h"
#include "base/bind.h" #include "base/bind.h"
#include "base/command_line.h" #include "base/command_line.h"
#include "base/containers/flat_set.h" #include "base/containers/flat_set.h"
...@@ -93,43 +94,6 @@ class CustomFakeProfileOAuth2TokenService ...@@ -93,43 +94,6 @@ class CustomFakeProfileOAuth2TokenService
base::OnceClosure on_access_token_invalidated_callback_; base::OnceClosure on_access_token_invalidated_callback_;
}; };
class FakeCookieManager : public network::mojom::CookieManager {
public:
void SetCanonicalCookie(const net::CanonicalCookie& cookie,
bool secure_source,
bool modify_http_only,
SetCanonicalCookieCallback callback) override {
std::move(callback).Run(false);
}
void GetAllCookies(GetAllCookiesCallback callback) override {}
void GetCookieList(const GURL& url,
const net::CookieOptions& cookie_options,
GetCookieListCallback callback) override {}
void DeleteCanonicalCookie(const net::CanonicalCookie& cookie,
DeleteCanonicalCookieCallback callback) override {}
void DeleteCookies(network::mojom::CookieDeletionFilterPtr filter,
DeleteCookiesCallback callback) override {}
void AddCookieChangeListener(
const GURL& url,
const std::string& name,
network::mojom::CookieChangeListenerPtr listener) override {
listener_ = std::move(listener);
}
void AddGlobalChangeListener(
network::mojom::CookieChangeListenerPtr notification_pointer) override {}
void CloneInterface(
network::mojom::CookieManagerRequest new_interface) override {}
void FlushCookieStore(FlushCookieStoreCallback callback) override {}
void SetContentSettings(
const std::vector<::ContentSettingPatternSource>& settings) override {}
void SetForceKeepSessionState() override {}
void BlockThirdPartyCookies(bool block) override {}
private:
// The observer receiving change notifications.
network::mojom::CookieChangeListenerPtr listener_;
};
class AccountTrackerServiceForTest : public AccountTrackerService { class AccountTrackerServiceForTest : public AccountTrackerService {
public: public:
void SetAccountInfoFromUserInfo(const std::string& account_id, void SetAccountInfoFromUserInfo(const std::string& account_id,
...@@ -548,7 +512,6 @@ class IdentityManagerTest : public testing::Test { ...@@ -548,7 +512,6 @@ class IdentityManagerTest : public testing::Test {
SigninManagerBase::RegisterProfilePrefs(pref_service_.registry()); SigninManagerBase::RegisterProfilePrefs(pref_service_.registry());
SigninManagerBase::RegisterPrefs(pref_service_.registry()); SigninManagerBase::RegisterPrefs(pref_service_.registry());
signin_client_.set_cookie_manager(std::make_unique<FakeCookieManager>());
account_tracker_.Initialize(&pref_service_, base::FilePath()); account_tracker_.Initialize(&pref_service_, base::FilePath());
gaia_cookie_manager_service_.InitCookieListener(); gaia_cookie_manager_service_.InitCookieListener();
......
...@@ -401,6 +401,8 @@ jumbo_source_set("test_support") { ...@@ -401,6 +401,8 @@ jumbo_source_set("test_support") {
sources = [ sources = [
"mojo_socket_test_util.cc", "mojo_socket_test_util.cc",
"mojo_socket_test_util.h", "mojo_socket_test_util.h",
"test/test_cookie_manager.cc",
"test/test_cookie_manager.h",
"test/test_data_pipe_getter.cc", "test/test_data_pipe_getter.cc",
"test/test_data_pipe_getter.h", "test/test_data_pipe_getter.h",
"test/test_network_connection_tracker.cc", "test/test_network_connection_tracker.cc",
......
// Copyright 2019 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.
#include "services/network/test/test_cookie_manager.h"
#include <utility>
namespace network {
TestCookieManager::TestCookieManager() = default;
TestCookieManager::~TestCookieManager() = default;
void TestCookieManager::SetCanonicalCookie(
const net::CanonicalCookie& cookie,
bool secure_source,
bool modify_http_only,
SetCanonicalCookieCallback callback) {
std::move(callback).Run(false);
}
void TestCookieManager::AddCookieChangeListener(
const GURL& url,
const std::string& name,
network::mojom::CookieChangeListenerPtr listener) {
cookie_change_listeners_.push_back(std::move(listener));
}
} // namespace network
// Copyright 2019 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.
#ifndef SERVICES_NETWORK_TEST_TEST_COOKIE_MANAGER_H_
#define SERVICES_NETWORK_TEST_TEST_COOKIE_MANAGER_H_
#include <string>
#include <vector>
#include "base/callback_forward.h"
#include "base/macros.h"
#include "services/network/public/mojom/cookie_manager.mojom.h"
namespace network {
// Stubbed out implementation of network::mojom::CookieManager for
// tests.
class TestCookieManager : public network::mojom::CookieManager {
public:
TestCookieManager();
~TestCookieManager() override;
void SetCanonicalCookie(const net::CanonicalCookie& cookie,
bool secure_source,
bool modify_http_only,
SetCanonicalCookieCallback callback) override;
void GetAllCookies(GetAllCookiesCallback callback) override {}
void GetCookieList(const GURL& url,
const net::CookieOptions& cookie_options,
GetCookieListCallback callback) override {}
void DeleteCanonicalCookie(const net::CanonicalCookie& cookie,
DeleteCanonicalCookieCallback callback) override {}
void DeleteCookies(network::mojom::CookieDeletionFilterPtr filter,
DeleteCookiesCallback callback) override {}
void AddCookieChangeListener(
const GURL& url,
const std::string& name,
network::mojom::CookieChangeListenerPtr listener) override;
void AddGlobalChangeListener(
network::mojom::CookieChangeListenerPtr notification_pointer) override {}
void CloneInterface(
network::mojom::CookieManagerRequest new_interface) override {}
void FlushCookieStore(FlushCookieStoreCallback callback) override {}
void SetContentSettings(
const std::vector<::ContentSettingPatternSource>& settings) override {}
void SetForceKeepSessionState() override {}
void BlockThirdPartyCookies(bool block) override {}
private:
// List of observers receiving cookie change notifications.
std::vector<network::mojom::CookieChangeListenerPtr> cookie_change_listeners_;
};
} // namespace network
#endif // SERVICES_NETWORK_TEST_TEST_COOKIE_MANAGER_H_
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