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

Side by Side Diff: chrome/browser/safe_browsing/safe_browsing_service_browsertest.cc

Issue 2960703003: Add a feature flag for network service and about:flags entry for it. (Closed)
Patch Set: merge Created 3 years, 5 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
« no previous file with comments | « chrome/browser/flag_descriptions.cc ('k') | chrome/renderer/chrome_content_renderer_client.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 // 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 "chrome/browser/safe_browsing/safe_browsing_service.h" 9 #include "chrome/browser/safe_browsing/safe_browsing_service.h"
10 10
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 #include "components/safe_browsing_db/test_database_manager.h" 60 #include "components/safe_browsing_db/test_database_manager.h"
61 #include "components/safe_browsing_db/util.h" 61 #include "components/safe_browsing_db/util.h"
62 #include "components/safe_browsing_db/v4_database.h" 62 #include "components/safe_browsing_db/v4_database.h"
63 #include "components/safe_browsing_db/v4_feature_list.h" 63 #include "components/safe_browsing_db/v4_feature_list.h"
64 #include "components/safe_browsing_db/v4_get_hash_protocol_manager.h" 64 #include "components/safe_browsing_db/v4_get_hash_protocol_manager.h"
65 #include "components/safe_browsing_db/v4_protocol_manager_util.h" 65 #include "components/safe_browsing_db/v4_protocol_manager_util.h"
66 #include "content/public/browser/interstitial_page.h" 66 #include "content/public/browser/interstitial_page.h"
67 #include "content/public/browser/navigation_entry.h" 67 #include "content/public/browser/navigation_entry.h"
68 #include "content/public/browser/render_frame_host.h" 68 #include "content/public/browser/render_frame_host.h"
69 #include "content/public/browser/web_contents.h" 69 #include "content/public/browser/web_contents.h"
70 #include "content/public/common/content_switches.h" 70 #include "content/public/common/content_features.h"
71 #include "content/public/test/browser_test_utils.h" 71 #include "content/public/test/browser_test_utils.h"
72 #include "crypto/sha2.h" 72 #include "crypto/sha2.h"
73 #include "net/cookies/cookie_store.h" 73 #include "net/cookies/cookie_store.h"
74 #include "net/cookies/cookie_util.h" 74 #include "net/cookies/cookie_util.h"
75 #include "net/test/embedded_test_server/embedded_test_server.h" 75 #include "net/test/embedded_test_server/embedded_test_server.h"
76 #include "net/test/embedded_test_server/http_request.h" 76 #include "net/test/embedded_test_server/http_request.h"
77 #include "net/test/embedded_test_server/http_response.h" 77 #include "net/test/embedded_test_server/http_response.h"
78 #include "sql/connection.h" 78 #include "sql/connection.h"
79 #include "sql/statement.h" 79 #include "sql/statement.h"
80 #include "testing/gmock/include/gmock/gmock.h" 80 #include "testing/gmock/include/gmock/gmock.h"
(...skipping 1395 matching lines...) Expand 10 before | Expand all | Expand 10 after
1476 // Delete the Profile. SBS stops again. 1476 // Delete the Profile. SBS stops again.
1477 pref_service2 = nullptr; 1477 pref_service2 = nullptr;
1478 profile2.reset(); 1478 profile2.reset();
1479 EXPECT_FALSE(sb_service->enabled_by_prefs()); 1479 EXPECT_FALSE(sb_service->enabled_by_prefs());
1480 WaitForIOAndCheckEnabled(sb_service, false); 1480 WaitForIOAndCheckEnabled(sb_service, false);
1481 EXPECT_FALSE(csd_service->enabled()); 1481 EXPECT_FALSE(csd_service->enabled());
1482 } 1482 }
1483 1483
1484 IN_PROC_BROWSER_TEST_F(SafeBrowsingServiceTest, MalwareWebSocketBlocked) { 1484 IN_PROC_BROWSER_TEST_F(SafeBrowsingServiceTest, MalwareWebSocketBlocked) {
1485 // This test currently only passes when the network service is enabled. 1485 // This test currently only passes when the network service is enabled.
1486 if (!base::CommandLine::ForCurrentProcess()->HasSwitch( 1486 if (!base::FeatureList::IsEnabled(features::kNetworkService))
1487 ::switches::kEnableNetworkService)) {
1488 return; 1487 return;
1489 }
1490 GURL main_url = embedded_test_server()->GetURL(kMalwareWebSocketPage); 1488 GURL main_url = embedded_test_server()->GetURL(kMalwareWebSocketPage);
1491 // This constructs the URL with the same logic as malware_websocket.html. 1489 // This constructs the URL with the same logic as malware_websocket.html.
1492 GURL resolved = main_url.Resolve("/safe_browsing/malware-ws"); 1490 GURL resolved = main_url.Resolve("/safe_browsing/malware-ws");
1493 GURL::Replacements replace_scheme; 1491 GURL::Replacements replace_scheme;
1494 replace_scheme.SetScheme("ws", url::Component(0, strlen("ws"))); 1492 replace_scheme.SetScheme("ws", url::Component(0, strlen("ws")));
1495 GURL websocket_url = resolved.ReplaceComponents(replace_scheme); 1493 GURL websocket_url = resolved.ReplaceComponents(replace_scheme);
1496 1494
1497 // Add the WebSocket url as malware. 1495 // Add the WebSocket url as malware.
1498 SBFullHashResult uws_full_hash; 1496 SBFullHashResult uws_full_hash;
1499 GenUrlFullHashResult(websocket_url, MALWARE, &uws_full_hash); 1497 GenUrlFullHashResult(websocket_url, MALWARE, &uws_full_hash);
(...skipping 747 matching lines...) Expand 10 before | Expand all | Expand 10 after
2247 client->CheckBrowseUrl(bad_url); 2245 client->CheckBrowseUrl(bad_url);
2248 EXPECT_EQ(SB_THREAT_TYPE_URL_MALWARE, client->GetThreatType()); 2246 EXPECT_EQ(SB_THREAT_TYPE_URL_MALWARE, client->GetThreatType());
2249 } 2247 }
2250 } 2248 }
2251 2249
2252 // This is almost identical to 2250 // This is almost identical to
2253 // SafeBrowsingServiceTest.MalwareWebSocketBlocked. That test will be deleted 2251 // SafeBrowsingServiceTest.MalwareWebSocketBlocked. That test will be deleted
2254 // when the old database backend stops being used. 2252 // when the old database backend stops being used.
2255 IN_PROC_BROWSER_TEST_F(V4SafeBrowsingServiceTest, MalwareWebSocketBlocked) { 2253 IN_PROC_BROWSER_TEST_F(V4SafeBrowsingServiceTest, MalwareWebSocketBlocked) {
2256 // This test currently only passes when the network service is enabled. 2254 // This test currently only passes when the network service is enabled.
2257 if (!base::CommandLine::ForCurrentProcess()->HasSwitch( 2255 if (!base::FeatureList::IsEnabled(features::kNetworkService))
2258 ::switches::kEnableNetworkService)) {
2259 return; 2256 return;
2260 }
2261 GURL main_url = embedded_test_server()->GetURL(kMalwareWebSocketPage); 2257 GURL main_url = embedded_test_server()->GetURL(kMalwareWebSocketPage);
2262 // This constructs the URL with the same logic as malware_websocket.html. 2258 // This constructs the URL with the same logic as malware_websocket.html.
2263 GURL resolved = main_url.Resolve("/safe_browsing/malware-ws"); 2259 GURL resolved = main_url.Resolve("/safe_browsing/malware-ws");
2264 GURL::Replacements replace_scheme; 2260 GURL::Replacements replace_scheme;
2265 replace_scheme.SetScheme("ws", url::Component(0, strlen("ws"))); 2261 replace_scheme.SetScheme("ws", url::Component(0, strlen("ws")));
2266 GURL websocket_url = resolved.ReplaceComponents(replace_scheme); 2262 GURL websocket_url = resolved.ReplaceComponents(replace_scheme);
2267 2263
2268 MarkUrlForMalwareUnexpired(websocket_url); 2264 MarkUrlForMalwareUnexpired(websocket_url);
2269 2265
2270 // Brute force method for waiting for the interstitial to be displayed. 2266 // Brute force method for waiting for the interstitial to be displayed.
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
2476 } 2472 }
2477 2473
2478 INSTANTIATE_TEST_CASE_P( 2474 INSTANTIATE_TEST_CASE_P(
2479 MaybeSetMetadata, 2475 MaybeSetMetadata,
2480 V4SafeBrowsingServiceMetadataTest, 2476 V4SafeBrowsingServiceMetadataTest,
2481 testing::Values(ThreatPatternType::NONE, 2477 testing::Values(ThreatPatternType::NONE,
2482 ThreatPatternType::MALWARE_LANDING, 2478 ThreatPatternType::MALWARE_LANDING,
2483 ThreatPatternType::MALWARE_DISTRIBUTION)); 2479 ThreatPatternType::MALWARE_DISTRIBUTION));
2484 2480
2485 } // namespace safe_browsing 2481 } // namespace safe_browsing
OLDNEW
« no previous file with comments | « chrome/browser/flag_descriptions.cc ('k') | chrome/renderer/chrome_content_renderer_client.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698