| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 <vector> | 5 #include <vector> |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/string_util.h" | 8 #include "base/string_util.h" |
| 9 #include "googleurl/src/gurl.h" | 9 #include "googleurl/src/gurl.h" |
| 10 #include "net/base/load_log.h" | 10 #include "net/base/load_log.h" |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 88 | 88 |
| 89 TEST(ProxyServiceTest, Direct) { | 89 TEST(ProxyServiceTest, Direct) { |
| 90 MockAsyncProxyResolver* resolver = new MockAsyncProxyResolver; | 90 MockAsyncProxyResolver* resolver = new MockAsyncProxyResolver; |
| 91 scoped_refptr<ProxyService> service( | 91 scoped_refptr<ProxyService> service( |
| 92 new ProxyService(new MockProxyConfigService, resolver)); | 92 new ProxyService(new MockProxyConfigService, resolver)); |
| 93 | 93 |
| 94 GURL url("http://www.google.com/"); | 94 GURL url("http://www.google.com/"); |
| 95 | 95 |
| 96 ProxyInfo info; | 96 ProxyInfo info; |
| 97 TestCompletionCallback callback; | 97 TestCompletionCallback callback; |
| 98 scoped_refptr<LoadLog> log(new LoadLog); | 98 scoped_refptr<LoadLog> log(new LoadLog(LoadLog::kUnbounded)); |
| 99 int rv = service->ResolveProxy(url, &info, &callback, NULL, log); | 99 int rv = service->ResolveProxy(url, &info, &callback, NULL, log); |
| 100 EXPECT_EQ(OK, rv); | 100 EXPECT_EQ(OK, rv); |
| 101 EXPECT_TRUE(resolver->pending_requests().empty()); | 101 EXPECT_TRUE(resolver->pending_requests().empty()); |
| 102 EXPECT_TRUE(NULL == service->init_proxy_resolver_log()); | 102 EXPECT_TRUE(NULL == service->init_proxy_resolver_log()); |
| 103 | 103 |
| 104 EXPECT_TRUE(info.is_direct()); | 104 EXPECT_TRUE(info.is_direct()); |
| 105 | 105 |
| 106 // Check the LoadLog was filled correctly. | 106 // Check the LoadLog was filled correctly. |
| 107 EXPECT_EQ(2u, log->events().size()); | 107 EXPECT_EQ(2u, log->events().size()); |
| 108 ExpectLogContains(log, 0, LoadLog::TYPE_PROXY_SERVICE, LoadLog::PHASE_BEGIN); | 108 ExpectLogContains(log, 0, LoadLog::TYPE_PROXY_SERVICE, LoadLog::PHASE_BEGIN); |
| 109 ExpectLogContains(log, 1, LoadLog::TYPE_PROXY_SERVICE, LoadLog::PHASE_END); | 109 ExpectLogContains(log, 1, LoadLog::TYPE_PROXY_SERVICE, LoadLog::PHASE_END); |
| 110 } | 110 } |
| 111 | 111 |
| 112 TEST(ProxyServiceTest, PAC) { | 112 TEST(ProxyServiceTest, PAC) { |
| 113 MockProxyConfigService* config_service = | 113 MockProxyConfigService* config_service = |
| 114 new MockProxyConfigService("http://foopy/proxy.pac"); | 114 new MockProxyConfigService("http://foopy/proxy.pac"); |
| 115 | 115 |
| 116 MockAsyncProxyResolver* resolver = new MockAsyncProxyResolver; | 116 MockAsyncProxyResolver* resolver = new MockAsyncProxyResolver; |
| 117 | 117 |
| 118 scoped_refptr<ProxyService> service( | 118 scoped_refptr<ProxyService> service( |
| 119 new ProxyService(config_service, resolver)); | 119 new ProxyService(config_service, resolver)); |
| 120 | 120 |
| 121 GURL url("http://www.google.com/"); | 121 GURL url("http://www.google.com/"); |
| 122 | 122 |
| 123 ProxyInfo info; | 123 ProxyInfo info; |
| 124 TestCompletionCallback callback; | 124 TestCompletionCallback callback; |
| 125 scoped_refptr<LoadLog> log(new LoadLog); | 125 scoped_refptr<LoadLog> log(new LoadLog(LoadLog::kUnbounded)); |
| 126 int rv = service->ResolveProxy(url, &info, &callback, NULL, log); | 126 int rv = service->ResolveProxy(url, &info, &callback, NULL, log); |
| 127 EXPECT_EQ(ERR_IO_PENDING, rv); | 127 EXPECT_EQ(ERR_IO_PENDING, rv); |
| 128 | 128 |
| 129 EXPECT_EQ(GURL("http://foopy/proxy.pac"), | 129 EXPECT_EQ(GURL("http://foopy/proxy.pac"), |
| 130 resolver->pending_set_pac_script_request()->pac_url()); | 130 resolver->pending_set_pac_script_request()->pac_url()); |
| 131 EXPECT_FALSE(NULL == service->init_proxy_resolver_log()); | 131 EXPECT_FALSE(NULL == service->init_proxy_resolver_log()); |
| 132 resolver->pending_set_pac_script_request()->CompleteNow(OK); | 132 resolver->pending_set_pac_script_request()->CompleteNow(OK); |
| 133 | 133 |
| 134 ASSERT_EQ(1u, resolver->pending_requests().size()); | 134 ASSERT_EQ(1u, resolver->pending_requests().size()); |
| 135 EXPECT_EQ(url, resolver->pending_requests()[0]->url()); | 135 EXPECT_EQ(url, resolver->pending_requests()[0]->url()); |
| (...skipping 877 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1013 scoped_refptr<ProxyService> service( | 1013 scoped_refptr<ProxyService> service( |
| 1014 new ProxyService(config_service, resolver)); | 1014 new ProxyService(config_service, resolver)); |
| 1015 | 1015 |
| 1016 MockProxyScriptFetcher* fetcher = new MockProxyScriptFetcher; | 1016 MockProxyScriptFetcher* fetcher = new MockProxyScriptFetcher; |
| 1017 service->SetProxyScriptFetcher(fetcher); | 1017 service->SetProxyScriptFetcher(fetcher); |
| 1018 | 1018 |
| 1019 // Start 3 requests. | 1019 // Start 3 requests. |
| 1020 ProxyInfo info1; | 1020 ProxyInfo info1; |
| 1021 TestCompletionCallback callback1; | 1021 TestCompletionCallback callback1; |
| 1022 ProxyService::PacRequest* request1; | 1022 ProxyService::PacRequest* request1; |
| 1023 scoped_refptr<LoadLog> log1(new LoadLog); | 1023 scoped_refptr<LoadLog> log1(new LoadLog(LoadLog::kUnbounded)); |
| 1024 int rv = service->ResolveProxy( | 1024 int rv = service->ResolveProxy( |
| 1025 GURL("http://request1"), &info1, &callback1, &request1, log1); | 1025 GURL("http://request1"), &info1, &callback1, &request1, log1); |
| 1026 EXPECT_EQ(ERR_IO_PENDING, rv); | 1026 EXPECT_EQ(ERR_IO_PENDING, rv); |
| 1027 | 1027 |
| 1028 // The first request should have triggered download of PAC script. | 1028 // The first request should have triggered download of PAC script. |
| 1029 EXPECT_TRUE(fetcher->has_pending_request()); | 1029 EXPECT_TRUE(fetcher->has_pending_request()); |
| 1030 EXPECT_EQ(GURL("http://foopy/proxy.pac"), fetcher->pending_request_url()); | 1030 EXPECT_EQ(GURL("http://foopy/proxy.pac"), fetcher->pending_request_url()); |
| 1031 | 1031 |
| 1032 ProxyInfo info2; | 1032 ProxyInfo info2; |
| 1033 TestCompletionCallback callback2; | 1033 TestCompletionCallback callback2; |
| (...skipping 486 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1520 ProxyInfo info2; | 1520 ProxyInfo info2; |
| 1521 TestCompletionCallback callback2; | 1521 TestCompletionCallback callback2; |
| 1522 rv = service->ResolveProxy( | 1522 rv = service->ResolveProxy( |
| 1523 GURL("http://www.google.com"), &info2, &callback2, NULL, NULL); | 1523 GURL("http://www.google.com"), &info2, &callback2, NULL, NULL); |
| 1524 EXPECT_EQ(OK, rv); | 1524 EXPECT_EQ(OK, rv); |
| 1525 | 1525 |
| 1526 EXPECT_TRUE(info2.is_direct()); | 1526 EXPECT_TRUE(info2.is_direct()); |
| 1527 } | 1527 } |
| 1528 | 1528 |
| 1529 } // namespace net | 1529 } // namespace net |
| OLD | NEW |