OLD | NEW |
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 // This test creates a safebrowsing service using test safebrowsing database | 5 // This test creates a safebrowsing service using test safebrowsing database |
6 // and a test protocol manager. It is used to test logics in safebrowsing | 6 // and a test protocol manager. It is used to test logics in safebrowsing |
7 // service. | 7 // service. |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 // Owned by the SafebrowsingService. | 187 // Owned by the SafebrowsingService. |
188 TestSafeBrowsingDatabase* db_; | 188 TestSafeBrowsingDatabase* db_; |
189 }; | 189 }; |
190 | 190 |
191 // A TestProtocolManager that could return fixed responses from | 191 // A TestProtocolManager that could return fixed responses from |
192 // safebrowsing server for testing purpose. | 192 // safebrowsing server for testing purpose. |
193 class TestProtocolManager : public SafeBrowsingProtocolManager { | 193 class TestProtocolManager : public SafeBrowsingProtocolManager { |
194 public: | 194 public: |
195 TestProtocolManager(SafeBrowsingService* sb_service, | 195 TestProtocolManager(SafeBrowsingService* sb_service, |
196 const std::string& client_name, | 196 const std::string& client_name, |
197 const std::string& client_key, | |
198 const std::string& wrapped_key, | |
199 net::URLRequestContextGetter* request_context_getter, | 197 net::URLRequestContextGetter* request_context_getter, |
200 const std::string& info_url_prefix, | 198 const std::string& url_prefix, |
201 const std::string& mackey_url_prefix, | |
202 bool disable_auto_update) | 199 bool disable_auto_update) |
203 : SafeBrowsingProtocolManager(sb_service, client_name, client_key, | 200 : SafeBrowsingProtocolManager(sb_service, client_name, |
204 wrapped_key, request_context_getter, | 201 request_context_getter, url_prefix, |
205 info_url_prefix, mackey_url_prefix, | |
206 disable_auto_update), | 202 disable_auto_update), |
207 sb_service_(sb_service), | 203 sb_service_(sb_service), |
208 delay_ms_(0) { | 204 delay_ms_(0) { |
209 } | 205 } |
210 | 206 |
211 // This function is called when there is a prefix hit in local safebrowsing | 207 // This function is called when there is a prefix hit in local safebrowsing |
212 // database and safebrowsing service issues a get hash request to backends. | 208 // database and safebrowsing service issues a get hash request to backends. |
213 // We return a result from the prefilled full_hashes_ hash_map to simulate | 209 // We return a result from the prefilled full_hashes_ hash_map to simulate |
214 // server's response. At the same time, latency is added to simulate real | 210 // server's response. At the same time, latency is added to simulate real |
215 // life network issues. | 211 // life network issues. |
(...skipping 26 matching lines...) Expand all Loading... |
242 | 238 |
243 // Factory that creates TestProtocolManager instances. | 239 // Factory that creates TestProtocolManager instances. |
244 class TestSBProtocolManagerFactory : public SBProtocolManagerFactory { | 240 class TestSBProtocolManagerFactory : public SBProtocolManagerFactory { |
245 public: | 241 public: |
246 TestSBProtocolManagerFactory() : pm_(NULL) {} | 242 TestSBProtocolManagerFactory() : pm_(NULL) {} |
247 virtual ~TestSBProtocolManagerFactory() {} | 243 virtual ~TestSBProtocolManagerFactory() {} |
248 | 244 |
249 virtual SafeBrowsingProtocolManager* CreateProtocolManager( | 245 virtual SafeBrowsingProtocolManager* CreateProtocolManager( |
250 SafeBrowsingService* sb_service, | 246 SafeBrowsingService* sb_service, |
251 const std::string& client_name, | 247 const std::string& client_name, |
252 const std::string& client_key, | |
253 const std::string& wrapped_key, | |
254 net::URLRequestContextGetter* request_context_getter, | 248 net::URLRequestContextGetter* request_context_getter, |
255 const std::string& info_url_prefix, | 249 const std::string& url_prefix, |
256 const std::string& mackey_url_prefix, | |
257 bool disable_auto_update) { | 250 bool disable_auto_update) { |
258 pm_ = new TestProtocolManager( | 251 pm_ = new TestProtocolManager( |
259 sb_service, client_name, client_key, wrapped_key, | 252 sb_service, client_name, request_context_getter, |
260 request_context_getter, info_url_prefix, mackey_url_prefix, | 253 url_prefix, disable_auto_update); |
261 disable_auto_update); | |
262 return pm_; | 254 return pm_; |
263 } | 255 } |
264 TestProtocolManager* GetProtocolManager() { | 256 TestProtocolManager* GetProtocolManager() { |
265 return pm_; | 257 return pm_; |
266 } | 258 } |
267 private: | 259 private: |
268 // Owned by the SafebrowsingService. | 260 // Owned by the SafebrowsingService. |
269 TestProtocolManager* pm_; | 261 TestProtocolManager* pm_; |
270 }; | 262 }; |
271 | 263 |
(...skipping 492 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
764 | 756 |
765 // Delete the Profile. SBS stops again. | 757 // Delete the Profile. SBS stops again. |
766 pref_service2 = NULL; | 758 pref_service2 = NULL; |
767 profile2.reset(); | 759 profile2.reset(); |
768 WaitForIOThread(); | 760 WaitForIOThread(); |
769 EXPECT_FALSE(sb_service->enabled()); | 761 EXPECT_FALSE(sb_service->enabled()); |
770 EXPECT_FALSE(csd_service->enabled()); | 762 EXPECT_FALSE(csd_service->enabled()); |
771 } | 763 } |
772 | 764 |
773 } // namespace | 765 } // namespace |
OLD | NEW |