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

Unified Diff: tools/chrome_proxy/integration_tests/chrome_proxy_metrics.py

Issue 553543004: Update metrics verification for dev-proxy. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: sync to head. Created 6 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: tools/chrome_proxy/integration_tests/chrome_proxy_metrics.py
diff --git a/tools/chrome_proxy/integration_tests/chrome_proxy_metrics.py b/tools/chrome_proxy/integration_tests/chrome_proxy_metrics.py
index fd26a2d9254a03c22d7cf11930cfb4ed033b995f..3f765bf68ad8d10e4cb2509427d6e9816c7a64e6 100644
--- a/tools/chrome_proxy/integration_tests/chrome_proxy_metrics.py
+++ b/tools/chrome_proxy/integration_tests/chrome_proxy_metrics.py
@@ -20,6 +20,7 @@ CHROME_PROXY_VIA_HEADER_DEPRECATED = '1.1 Chrome Compression Proxy'
PROXY_SETTING_HTTPS = 'proxy.googlezip.net:443'
PROXY_SETTING_HTTPS_WITH_SCHEME = 'https://' + PROXY_SETTING_HTTPS
+PROXY_DEV_SETTING_HTTPS_WITH_SCHEME = 'http://proxy-dev.googlezip.net:80'
PROXY_SETTING_HTTP = 'compress.googlezip.net:80'
PROXY_SETTING_DIRECT = 'direct://'
@@ -97,6 +98,7 @@ class ChromeProxyMetric(network_metrics.NetworkMetric):
self.compute_data_saving = True
self.effective_proxies = {
"proxy": PROXY_SETTING_HTTPS_WITH_SCHEME,
+ "proxy-dev": PROXY_DEV_SETTING_HTTPS_WITH_SCHEME,
"fallback": PROXY_SETTING_HTTP,
"direct": PROXY_SETTING_DIRECT,
}
@@ -140,14 +142,16 @@ class ChromeProxyMetric(network_metrics.NetworkMetric):
for resp in self.IterResponses(tab):
if resp.IsValidByViaHeader():
via_count += 1
- elif tab and self.IsProxyBypassed(tab):
- logging.warning('Proxy bypassed for %s', resp.response.url)
- bypass_count += 1
else:
- r = resp.response
- raise ChromeProxyMetricException, (
- '%s: Via header (%s) is not valid (refer=%s, status=%d)' % (
- r.url, r.GetHeader('Via'), r.GetHeader('Referer'), r.status))
+ bypassed, _ = self.IsProxyBypassed(tab)
+ if tab and bypassed:
+ logging.warning('Proxy bypassed for %s', resp.response.url)
+ bypass_count += 1
+ else:
+ r = resp.response
+ raise ChromeProxyMetricException, (
+ '%s: Via header (%s) is not valid (refer=%s, status=%d)' % (
+ r.url, r.GetHeader('Via'), r.GetHeader('Referer'), r.status))
results.AddValue(scalar.ScalarValue(
results.current_page, 'checked_via_header', 'count', via_count))
results.AddValue(scalar.ScalarValue(
@@ -155,15 +159,27 @@ class ChromeProxyMetric(network_metrics.NetworkMetric):
def IsProxyBypassed(self, tab):
""" Returns True if all configured proxies are bypassed."""
+ if not tab:
+ return False, []
+
info = GetProxyInfoFromNetworkInternals(tab)
if not info['enabled']:
raise ChromeProxyMetricException, (
'Chrome proxy should be enabled. proxy info: %s' % info)
- bad_proxies = [str(p['proxy']) for p in info['badProxies']].sort()
+ bad_proxies = [str(p['proxy']) for p in info['badProxies']]
+ bad_proxies.sort()
proxies = [self.effective_proxies['proxy'],
- self.effective_proxies['fallback']].sort()
- return bad_proxies == proxies
+ self.effective_proxies['fallback']]
+ proxies.sort()
+ proxies_dev = [self.effective_proxies['proxy-dev'],
+ self.effective_proxies['fallback']]
+ proxies_dev.sort()
+ if bad_proxies == proxies:
+ return True, proxies
+ elif bad_proxies == proxies_dev:
+ return True, proxies_dev
+ return False, []
@staticmethod
def VerifyBadProxies(
@@ -213,10 +229,8 @@ class ChromeProxyMetric(network_metrics.NetworkMetric):
if not info['enabled']:
raise ChromeProxyMetricException, (
'Chrome proxy should be enabled. proxy info: %s' % info)
- self.VerifyBadProxies(
- info['badProxies'],
- [self.effective_proxies['proxy'],
- self.effective_proxies['fallback']])
+ _, expected_bad_proxies = self.IsProxyBypassed(tab)
+ self.VerifyBadProxies(info['badProxies'], expected_bad_proxies)
results.AddValue(scalar.ScalarValue(
results.current_page, 'bypass', 'count', bypass_count))

Powered by Google App Engine
This is Rietveld 408576698