Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: chrome/browser/extensions/api/webrequest/webrequest_api_unittest.cc

Issue 9572001: Do cookie checks in NetworkDelegate instead of the URLRequest::Delegate. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: patch for landing Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <queue> 5 #include <queue>
6 #include <map> 6 #include <map>
7 7
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/file_util.h" 10 #include "base/file_util.h"
11 #include "base/json/json_string_value_serializer.h" 11 #include "base/json/json_string_value_serializer.h"
12 #include "base/memory/weak_ptr.h" 12 #include "base/memory/weak_ptr.h"
13 #include "base/message_loop.h"
13 #include "base/path_service.h" 14 #include "base/path_service.h"
14 #include "base/stl_util.h" 15 #include "base/stl_util.h"
15 #include "base/utf_string_conversions.h" 16 #include "base/utf_string_conversions.h"
17 #include "chrome/browser/content_settings/cookie_settings.h"
16 #include "chrome/browser/extensions/api/webrequest/webrequest_api.h" 18 #include "chrome/browser/extensions/api/webrequest/webrequest_api.h"
17 #include "chrome/browser/extensions/api/webrequest/webrequest_api_constants.h" 19 #include "chrome/browser/extensions/api/webrequest/webrequest_api_constants.h"
18 #include "chrome/browser/extensions/api/webrequest/webrequest_api_helpers.h" 20 #include "chrome/browser/extensions/api/webrequest/webrequest_api_helpers.h"
19 #include "chrome/browser/extensions/extension_event_router_forwarder.h" 21 #include "chrome/browser/extensions/extension_event_router_forwarder.h"
20 #include "chrome/browser/net/chrome_network_delegate.h" 22 #include "chrome/browser/net/chrome_network_delegate.h"
21 #include "chrome/browser/prefs/pref_member.h" 23 #include "chrome/browser/prefs/pref_member.h"
22 #include "chrome/common/extensions/extension_messages.h" 24 #include "chrome/common/extensions/extension_messages.h"
23 #include "chrome/common/pref_names.h" 25 #include "chrome/common/pref_names.h"
24 #include "chrome/test/base/testing_browser_process.h" 26 #include "chrome/test/base/testing_browser_process.h"
25 #include "chrome/test/base/testing_pref_service.h" 27 #include "chrome/test/base/testing_pref_service.h"
26 #include "chrome/test/base/testing_profile.h" 28 #include "chrome/test/base/testing_profile.h"
29 #include "content/test/test_browser_thread.h"
27 #include "net/base/auth.h" 30 #include "net/base/auth.h"
28 #include "net/base/net_util.h" 31 #include "net/base/net_util.h"
29 #include "net/url_request/url_request_test_util.h" 32 #include "net/url_request/url_request_test_util.h"
30 #include "testing/gtest/include/gtest/gtest.h" 33 #include "testing/gtest/include/gtest/gtest.h"
31 34
32 namespace helpers = extension_webrequest_api_helpers; 35 namespace helpers = extension_webrequest_api_helpers;
33 namespace keys = extension_webrequest_api_constants; 36 namespace keys = extension_webrequest_api_constants;
34 37
35 namespace { 38 namespace {
36 static void EventHandledOnIOThread( 39 static void EventHandledOnIOThread(
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 91
89 sent_messages_.push_back(linked_ptr<IPC::Message>(message)); 92 sent_messages_.push_back(linked_ptr<IPC::Message>(message));
90 return true; 93 return true;
91 } 94 }
92 95
93 std::queue<base::Closure> task_queue_; 96 std::queue<base::Closure> task_queue_;
94 SentMessages sent_messages_; 97 SentMessages sent_messages_;
95 }; 98 };
96 99
97 class ExtensionWebRequestTest : public testing::Test { 100 class ExtensionWebRequestTest : public testing::Test {
101 public:
102 ExtensionWebRequestTest()
103 : ui_thread_(content::BrowserThread::UI, &message_loop_),
104 io_thread_(content::BrowserThread::IO, &message_loop_) {}
105
98 protected: 106 protected:
99 virtual void SetUp() { 107 virtual void SetUp() OVERRIDE {
100 event_router_ = new ExtensionEventRouterForwarder(); 108 event_router_ = new ExtensionEventRouterForwarder();
101 enable_referrers_.Init( 109 enable_referrers_.Init(
102 prefs::kEnableReferrers, profile_.GetTestingPrefService(), NULL); 110 prefs::kEnableReferrers, profile_.GetTestingPrefService(), NULL);
103 network_delegate_.reset(new ChromeNetworkDelegate( 111 network_delegate_.reset(new ChromeNetworkDelegate(
104 event_router_.get(), NULL, NULL, &profile_, &enable_referrers_)); 112 event_router_.get(), NULL, NULL, &profile_,
113 CookieSettings::Factory::GetForProfile(&profile_), &enable_referrers_));
105 context_ = new TestURLRequestContext(); 114 context_ = new TestURLRequestContext();
106 context_->set_network_delegate(network_delegate_.get()); 115 context_->set_network_delegate(network_delegate_.get());
107 } 116 }
108 117
109 MessageLoopForIO io_loop_; 118 MessageLoopForIO message_loop_;
119 content::TestBrowserThread ui_thread_;
120 content::TestBrowserThread io_thread_;
110 TestingProfile profile_; 121 TestingProfile profile_;
111 TestDelegate delegate_; 122 TestDelegate delegate_;
112 BooleanPrefMember enable_referrers_; 123 BooleanPrefMember enable_referrers_;
113 TestIPCSender ipc_sender_; 124 TestIPCSender ipc_sender_;
114 scoped_refptr<ExtensionEventRouterForwarder> event_router_; 125 scoped_refptr<ExtensionEventRouterForwarder> event_router_;
115 scoped_refptr<ExtensionInfoMap> extension_info_map_; 126 scoped_refptr<ExtensionInfoMap> extension_info_map_;
116 scoped_ptr<ChromeNetworkDelegate> network_delegate_; 127 scoped_ptr<ChromeNetworkDelegate> network_delegate_;
117 scoped_refptr<TestURLRequestContext> context_; 128 scoped_refptr<TestURLRequestContext> context_;
118 }; 129 };
119 130
(...skipping 277 matching lines...) Expand 10 before | Expand all | Expand 10 after
397 int before_size; 408 int before_size;
398 HeaderModificationTest_Header before[10]; 409 HeaderModificationTest_Header before[10];
399 int modification_size; 410 int modification_size;
400 HeaderModificationTest_Modification modification[10]; 411 HeaderModificationTest_Modification modification[10];
401 int after_size; 412 int after_size;
402 HeaderModificationTest_Header after[10]; 413 HeaderModificationTest_Header after[10];
403 }; 414 };
404 415
405 class ExtensionWebRequestHeaderModificationTest : 416 class ExtensionWebRequestHeaderModificationTest :
406 public testing::TestWithParam<HeaderModificationTest> { 417 public testing::TestWithParam<HeaderModificationTest> {
418 public:
419 ExtensionWebRequestHeaderModificationTest()
420 : ui_thread_(content::BrowserThread::UI, &message_loop_),
421 io_thread_(content::BrowserThread::IO, &message_loop_) {}
422
407 protected: 423 protected:
408 virtual void SetUp() { 424 virtual void SetUp() {
409 event_router_ = new ExtensionEventRouterForwarder(); 425 event_router_ = new ExtensionEventRouterForwarder();
410 enable_referrers_.Init( 426 enable_referrers_.Init(
411 prefs::kEnableReferrers, profile_.GetTestingPrefService(), NULL); 427 prefs::kEnableReferrers, profile_.GetTestingPrefService(), NULL);
412 network_delegate_.reset(new ChromeNetworkDelegate( 428 network_delegate_.reset(new ChromeNetworkDelegate(
413 event_router_.get(), NULL, NULL, &profile_, &enable_referrers_)); 429 event_router_.get(), NULL, NULL, &profile_,
430 CookieSettings::Factory::GetForProfile(&profile_), &enable_referrers_));
414 context_ = new TestURLRequestContext(); 431 context_ = new TestURLRequestContext();
415 context_->set_network_delegate(network_delegate_.get()); 432 context_->set_network_delegate(network_delegate_.get());
416 } 433 }
417 434
418 MessageLoopForIO io_loop_; 435 MessageLoopForIO message_loop_;
436 content::TestBrowserThread ui_thread_;
437 content::TestBrowserThread io_thread_;
419 TestingProfile profile_; 438 TestingProfile profile_;
420 TestDelegate delegate_; 439 TestDelegate delegate_;
421 BooleanPrefMember enable_referrers_; 440 BooleanPrefMember enable_referrers_;
422 TestIPCSender ipc_sender_; 441 TestIPCSender ipc_sender_;
423 scoped_refptr<ExtensionEventRouterForwarder> event_router_; 442 scoped_refptr<ExtensionEventRouterForwarder> event_router_;
424 scoped_refptr<ExtensionInfoMap> extension_info_map_; 443 scoped_refptr<ExtensionInfoMap> extension_info_map_;
425 scoped_ptr<ChromeNetworkDelegate> network_delegate_; 444 scoped_ptr<ChromeNetworkDelegate> network_delegate_;
426 scoped_refptr<TestURLRequestContext> context_; 445 scoped_refptr<TestURLRequestContext> context_;
427 }; 446 };
428 447
(...skipping 984 matching lines...) Expand 10 before | Expand all | Expand 10 after
1413 credentials_set = MergeOnAuthRequiredResponses( 1432 credentials_set = MergeOnAuthRequiredResponses(
1414 deltas, &auth3, &conflicting_extensions, &event_log); 1433 deltas, &auth3, &conflicting_extensions, &event_log);
1415 EXPECT_TRUE(credentials_set); 1434 EXPECT_TRUE(credentials_set);
1416 EXPECT_FALSE(auth3.Empty()); 1435 EXPECT_FALSE(auth3.Empty());
1417 EXPECT_EQ(username, auth1.username()); 1436 EXPECT_EQ(username, auth1.username());
1418 EXPECT_EQ(password, auth1.password()); 1437 EXPECT_EQ(password, auth1.password());
1419 EXPECT_EQ(1u, conflicting_extensions.size()); 1438 EXPECT_EQ(1u, conflicting_extensions.size());
1420 EXPECT_TRUE(ContainsKey(conflicting_extensions, "extid2")); 1439 EXPECT_TRUE(ContainsKey(conflicting_extensions, "extid2"));
1421 EXPECT_EQ(3u, event_log.size()); 1440 EXPECT_EQ(3u, event_log.size());
1422 } 1441 }
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/imageburner/burn_manager.cc ('k') | chrome/browser/extensions/extension_warning_set.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698