1effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch# Copyright 2014 The Chromium Authors. All rights reserved.
2effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch# Use of this source code is governed by a BSD-style license that can be
3effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch# found in the LICENSE file.
4effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
55f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)from integration_tests import chrome_proxy_measurements as measurements
65f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)from integration_tests import chrome_proxy_pagesets as pagesets
7116680a4aac90f2aa7413d9095a592090648e557Ben Murdochfrom telemetry import benchmark
8f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
9effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
105f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
11116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxyLatency(benchmark.Benchmark):
12effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  tag = 'latency'
135f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxyLatency
145f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.Top20PageSet
15effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  options = {'pageset_repeat_iters': 2}
16effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
17effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  def CustomizeBrowserOptions(self, options):
18effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    options.AppendExtraBrowserArgs('--enable-spdy-proxy-auth')
19effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
20effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
215f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
22116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxyLatencyDirect(benchmark.Benchmark):
23effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  tag = 'latency_direct'
245f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxyLatency
255f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.Top20PageSet
26effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  options = {'pageset_repeat_iters': 2}
27effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
28effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
295f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
30effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochclass ChromeProxyLatencySynthetic(ChromeProxyLatency):
315f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.SyntheticPageSet
32effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
33effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
345f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
35effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochclass ChromeProxyLatencySyntheticDirect(ChromeProxyLatencyDirect):
365f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.SyntheticPageSet
37effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
38effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
395f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
40116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxyDataSaving(benchmark.Benchmark):
41effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  tag = 'data_saving'
425f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxyDataSaving
435f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.Top20PageSet
44effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  options = {'pageset_repeat_iters': 1}
45effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  def CustomizeBrowserOptions(self, options):
46effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    options.AppendExtraBrowserArgs('--enable-spdy-proxy-auth')
47effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
48effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
495f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
50116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxyDataSavingDirect(benchmark.Benchmark):
51effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  tag = 'data_saving_direct'
525f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxyDataSaving
535f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.Top20PageSet
54effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  options = {'pageset_repeat_iters': 2}
55effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
56effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
575f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
58effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochclass ChromeProxyDataSavingSynthetic(ChromeProxyDataSaving):
595f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.SyntheticPageSet
60effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
61effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
625f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
63effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochclass ChromeProxyDataSavingSyntheticDirect(ChromeProxyDataSavingDirect):
645f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.SyntheticPageSet
65effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
66effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
675f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
68116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxyHeaderValidation(benchmark.Benchmark):
69effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  tag = 'header_validation'
705f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxyHeaders
715f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.Top20PageSet
72effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
731320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci@benchmark.Enabled('android')
741320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciclass ChromeProxyClientVersion(benchmark.Benchmark):
751320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  tag = 'client_version'
761320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  test = measurements.ChromeProxyClientVersion
771320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  page_set = pagesets.SyntheticPageSet
78effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
795f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
80116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxyBypass(benchmark.Benchmark):
81effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  tag = 'bypass'
825f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxyBypass
835f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.BypassPageSet
84effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
851320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci@benchmark.Enabled('android')
861320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciclass ChromeProxyBlockOnce(benchmark.Benchmark):
871320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  tag = 'block_once'
881320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  test = measurements.ChromeProxyBlockOnce
891320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  page_set = pagesets.BlockOncePageSet
901320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
91effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
925f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
93116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxySafeBrowsing(benchmark.Benchmark):
94effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  tag = 'safebrowsing'
955f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxySafebrowsing
965f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.SafebrowsingPageSet
97effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
98effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
995f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
100116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxyHTTPFallbackProbeURL(benchmark.Benchmark):
101010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  tag = 'fallback-probe'
1025f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxyHTTPFallbackProbeURL
1035f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.SyntheticPageSet
104010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)
105010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)
1065f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
107116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxyHTTPFallbackViaHeader(benchmark.Benchmark):
108010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  tag = 'fallback-viaheader'
1095f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxyHTTPFallbackViaHeader
1105f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.FallbackViaHeaderPageSet
111010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)
112010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)
1135f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)@benchmark.Enabled('android')
114116680a4aac90f2aa7413d9095a592090648e557Ben Murdochclass ChromeProxySmoke(benchmark.Benchmark):
115effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  tag = 'smoke'
1165f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  test = measurements.ChromeProxySmoke
1175f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  page_set = pagesets.SmokePageSet
118