| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 import datetime | 5 import datetime |
| 6 import logging | 6 import logging |
| 7 import os | 7 import os |
| 8 | 8 |
| 9 from integration_tests import network_metrics | 9 from integration_tests import network_metrics |
| 10 from telemetry.core import util | 10 from telemetry.core import util |
| (...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 413 'Exactly one response should be bypassed. ' | 413 'Exactly one response should be bypassed. ' |
| 414 '(eligible_response_count=%d, bypass_count=%d)\n' % ( | 414 '(eligible_response_count=%d, bypass_count=%d)\n' % ( |
| 415 eligible_response_count, bypass_count)) | 415 eligible_response_count, bypass_count)) |
| 416 else: | 416 else: |
| 417 results.AddValue(scalar.ScalarValue( | 417 results.AddValue(scalar.ScalarValue( |
| 418 results.current_page, 'eligible_responses', 'count', | 418 results.current_page, 'eligible_responses', 'count', |
| 419 eligible_response_count)) | 419 eligible_response_count)) |
| 420 results.AddValue(scalar.ScalarValue( | 420 results.AddValue(scalar.ScalarValue( |
| 421 results.current_page, 'bypass', 'count', bypass_count)) | 421 results.current_page, 'bypass', 'count', bypass_count)) |
| 422 | 422 |
| 423 def AddResultsForSafebrowsing(self, tab, results): | 423 def AddResultsForSafebrowsingMobile(self, tab, results): |
| 424 count = 0 | 424 count = 0 |
| 425 safebrowsing_count = 0 | 425 safebrowsing_count = 0 |
| 426 for resp in self.IterResponses(tab): | 426 for resp in self.IterResponses(tab): |
| 427 count += 1 | 427 count += 1 |
| 428 if resp.IsSafebrowsingResponse(): | 428 if resp.IsSafebrowsingResponse(): |
| 429 safebrowsing_count += 1 | 429 safebrowsing_count += 1 |
| 430 else: | 430 else: |
| 431 r = resp.response | 431 r = resp.response |
| 432 raise ChromeProxyMetricException, ( | 432 raise ChromeProxyMetricException, ( |
| 433 '%s: Not a valid safe browsing response.\n' | 433 '%s: Not a valid safe browsing response.\n' |
| 434 'Reponse: status=(%d, %s)\nHeaders:\n %s' % ( | 434 'Reponse: status=(%d, %s)\nHeaders:\n %s' % ( |
| 435 r.url, r.status, r.status_text, r.headers)) | 435 r.url, r.status, r.status_text, r.headers)) |
| 436 if count == safebrowsing_count: | 436 if count == safebrowsing_count: |
| 437 results.AddValue(scalar.ScalarValue( | 437 results.AddValue(scalar.ScalarValue( |
| 438 results.current_page, 'safebrowsing', 'boolean', True)) | 438 results.current_page, 'safebrowsing', 'boolean', True)) |
| 439 else: | 439 else: |
| 440 raise ChromeProxyMetricException, ( | 440 raise ChromeProxyMetricException, ( |
| 441 'Safebrowsing failed (count=%d, safebrowsing_count=%d)\n' % ( | 441 'Safebrowsing failed (count=%d, safebrowsing_count=%d)\n' % ( |
| 442 count, safebrowsing_count)) | 442 count, safebrowsing_count)) |
| 443 | 443 |
| 444 def AddResultsForSafebrowsingDesktop(self, tab, results): |
| 445 count = 0 |
| 446 safebrowsing_count = 0 |
| 447 for resp in self.IterResponses(tab): |
| 448 count += 1 |
| 449 if resp.HasChromeProxyViaHeader(): |
| 450 safebrowsing_count += 1 |
| 451 else: |
| 452 r = resp.response |
| 453 raise ChromeProxyMetricException, ( |
| 454 '%s: Safebrowsing feature should be off for desktop.\n' |
| 455 'Reponse: status=(%d, %s)\nHeaders:\n %s' % ( |
| 456 r.url, r.status, r.status_text, r.headers)) |
| 457 if count == safebrowsing_count: |
| 458 results.AddValue(scalar.ScalarValue( |
| 459 results.current_page, 'safebrowsing', 'boolean', True)) |
| 460 else: |
| 461 raise ChromeProxyMetricException, ( |
| 462 'Safebrowsing failed (count=%d, safebrowsing_count=%d)\n' % ( |
| 463 count, safebrowsing_count)) |
| 464 |
| 444 def VerifyProxyInfo(self, tab, expected_proxies, expected_bad_proxies): | 465 def VerifyProxyInfo(self, tab, expected_proxies, expected_bad_proxies): |
| 445 info = GetProxyInfoFromNetworkInternals(tab) | 466 info = GetProxyInfoFromNetworkInternals(tab) |
| 446 if not 'enabled' in info or not info['enabled']: | 467 if not 'enabled' in info or not info['enabled']: |
| 447 raise ChromeProxyMetricException, ( | 468 raise ChromeProxyMetricException, ( |
| 448 'Chrome proxy should be enabled. proxy info: %s' % info) | 469 'Chrome proxy should be enabled. proxy info: %s' % info) |
| 449 proxies = info['proxies'] | 470 proxies = info['proxies'] |
| 450 if (set(proxies) != set(expected_proxies) and | 471 if (set(proxies) != set(expected_proxies) and |
| 451 set(proxies) != set(self.ProxyListForDev(expected_proxies))): | 472 set(proxies) != set(self.ProxyListForDev(expected_proxies))): |
| 452 raise ChromeProxyMetricException, ( | 473 raise ChromeProxyMetricException, ( |
| 453 'Wrong effective proxies (%s). Expect: "%s"' % ( | 474 'Wrong effective proxies (%s). Expect: "%s"' % ( |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 507 if not 'enabled' in info or not info['enabled']: | 528 if not 'enabled' in info or not info['enabled']: |
| 508 raise ChromeProxyMetricException, ( | 529 raise ChromeProxyMetricException, ( |
| 509 'Chrome proxy should be enabled. proxy info: %s' % info) | 530 'Chrome proxy should be enabled. proxy info: %s' % info) |
| 510 # TODO(sclittle): Remove this dependency on net-internals#proxy once an | 531 # TODO(sclittle): Remove this dependency on net-internals#proxy once an |
| 511 # alternative method of verifying that Chrome is on the fallback proxy | 532 # alternative method of verifying that Chrome is on the fallback proxy |
| 512 # exists. | 533 # exists. |
| 513 self.VerifyBadProxies(info['badProxies'], | 534 self.VerifyBadProxies(info['badProxies'], |
| 514 expected_bad_proxies) | 535 expected_bad_proxies) |
| 515 results.AddValue(scalar.ScalarValue( | 536 results.AddValue(scalar.ScalarValue( |
| 516 results.current_page, 'explicit_bypass', 'boolean', True)) | 537 results.current_page, 'explicit_bypass', 'boolean', True)) |
| OLD | NEW |