| 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 uses the safebrowsing test server published at | 5 // This test uses the safebrowsing test server published at |
| 6 // http://code.google.com/p/google-safe-browsing/ to test the safebrowsing | 6 // http://code.google.com/p/google-safe-browsing/ to test the safebrowsing |
| 7 // protocol implemetation. Details of the safebrowsing testing flow is | 7 // protocol implemetation. Details of the safebrowsing testing flow is |
| 8 // documented at | 8 // documented at |
| 9 // http://code.google.com/p/google-safe-browsing/wiki/ProtocolTesting | 9 // http://code.google.com/p/google-safe-browsing/wiki/ProtocolTesting |
| 10 // | 10 // |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 76 // Parses server response for verify_urls. The expected format is: | 76 // Parses server response for verify_urls. The expected format is: |
| 77 // | 77 // |
| 78 // first.random.url.com/ internal-test-shavar yes | 78 // first.random.url.com/ internal-test-shavar yes |
| 79 // second.random.url.com/ internal-test-shavar yes | 79 // second.random.url.com/ internal-test-shavar yes |
| 80 // ... | 80 // ... |
| 81 bool ParsePhishingUrls(const std::string& data, | 81 bool ParsePhishingUrls(const std::string& data, |
| 82 std::vector<PhishingUrl>* phishing_urls) { | 82 std::vector<PhishingUrl>* phishing_urls) { |
| 83 if (data.empty()) | 83 if (data.empty()) |
| 84 return false; | 84 return false; |
| 85 | 85 |
| 86 std::vector<std::string> urls; | 86 for (const base::StringPiece& url_str : base::SplitStringPiece( |
| 87 base::SplitString(data, '\n', &urls); | 87 data, "\n", base::TRIM_WHITESPACE, base::SPLIT_WANT_NONEMPTY)) { |
| 88 for (size_t i = 0; i < urls.size(); ++i) { | |
| 89 if (urls[i].empty()) | |
| 90 continue; | |
| 91 PhishingUrl phishing_url; | 88 PhishingUrl phishing_url; |
| 92 std::vector<std::string> record_parts; | 89 std::vector<std::string> record_parts = base::SplitString( |
| 93 base::SplitString(urls[i], '\t', &record_parts); | 90 url_str, "\t", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL); |
| 94 if (record_parts.size() != 3) { | 91 if (record_parts.size() != 3) { |
| 95 LOG(ERROR) << "Unexpected URL format in phishing URL list: " | 92 LOG(ERROR) << "Unexpected URL format in phishing URL list: " |
| 96 << urls[i]; | 93 << url_str.as_string(); |
| 97 return false; | 94 return false; |
| 98 } | 95 } |
| 99 phishing_url.url = std::string(url::kHttpScheme) + "://" + record_parts[0]; | 96 phishing_url.url = std::string(url::kHttpScheme) + "://" + record_parts[0]; |
| 100 phishing_url.list_name = record_parts[1]; | 97 phishing_url.list_name = record_parts[1]; |
| 101 if (record_parts[2] == "yes") { | 98 if (record_parts[2] == "yes") { |
| 102 phishing_url.is_phishing = true; | 99 phishing_url.is_phishing = true; |
| 103 } else if (record_parts[2] == "no") { | 100 } else if (record_parts[2] == "no") { |
| 104 phishing_url.is_phishing = false; | 101 phishing_url.is_phishing = false; |
| 105 } else { | 102 } else { |
| 106 LOG(ERROR) << "Unrecognized expectation in " << urls[i] | 103 LOG(ERROR) << "Unrecognized expectation in " << url_str.as_string() |
| 107 << ": " << record_parts[2]; | 104 << ": " << record_parts[2]; |
| 108 return false; | 105 return false; |
| 109 } | 106 } |
| 110 phishing_urls->push_back(phishing_url); | 107 phishing_urls->push_back(phishing_url); |
| 111 } | 108 } |
| 112 return true; | 109 return true; |
| 113 } | 110 } |
| 114 | 111 |
| 115 class FakeSafeBrowsingService : public SafeBrowsingService { | 112 class FakeSafeBrowsingService : public SafeBrowsingService { |
| 116 public: | 113 public: |
| (...skipping 460 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 577 safe_browsing_helper->FetchDBToVerify(test_server(), step)); | 574 safe_browsing_helper->FetchDBToVerify(test_server(), step)); |
| 578 EXPECT_GT(safe_browsing_helper->response_data().size(), 0U); | 575 EXPECT_GT(safe_browsing_helper->response_data().size(), 0U); |
| 579 last_step = step; | 576 last_step = step; |
| 580 } | 577 } |
| 581 | 578 |
| 582 // Verifies with server if test is done and waits till server responses. | 579 // Verifies with server if test is done and waits till server responses. |
| 583 EXPECT_EQ(net::URLRequestStatus::SUCCESS, | 580 EXPECT_EQ(net::URLRequestStatus::SUCCESS, |
| 584 safe_browsing_helper->VerifyTestComplete(test_server(), last_step)); | 581 safe_browsing_helper->VerifyTestComplete(test_server(), last_step)); |
| 585 EXPECT_EQ("yes", safe_browsing_helper->response_data()); | 582 EXPECT_EQ("yes", safe_browsing_helper->response_data()); |
| 586 } | 583 } |
| OLD | NEW |