Upstream version 9.37.197.0
[platform/framework/web/crosswalk.git] / src / tools / perf / page_sets / chrome_proxy / smoke.py
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
3 # found in the LICENSE file.
4 # pylint: disable=W0401,W0614
5 from telemetry.page.actions.all_page_actions import *
6 from telemetry.page import page as page_module
7 from telemetry.page import page_set as page_set_module
8
9
10 class SmokePage(page_module.Page):
11
12   def __init__(self, url, page_set, name=''):
13     super(SmokePage, self).__init__(url=url, page_set=page_set, name=name)
14     self.archive_data_file = '../data/chrome_proxy_smoke.json'
15
16
17 class Page1(SmokePage):
18
19   """
20   Why: Check chrome proxy response headers.
21   """
22
23   def __init__(self, page_set):
24     super(Page1, self).__init__(
25       url='http://aws1.mdw.la/fw/',
26       page_set=page_set,
27       name='header validation')
28
29
30 class Page2(SmokePage):
31
32   """
33   Why: Check data compression
34   """
35
36   def __init__(self, page_set):
37     super(Page2, self).__init__(
38       url='http://aws1.mdw.la/static/',
39       page_set=page_set,
40       name='compression: image')
41
42
43 class Page3(SmokePage):
44
45   """
46   Why: Check bypass
47   """
48
49   def __init__(self, page_set):
50     super(Page3, self).__init__(
51       url='http://aws1.mdw.la/bypass/',
52       page_set=page_set,
53       name='bypass')
54     self.restart_after = True
55
56
57 class Page4(SmokePage):
58
59   """
60   Why: Check data compression
61   """
62
63   def __init__(self, page_set):
64     super(Page4, self).__init__(
65       url='http://aws1.mdw.la/static/',
66       page_set=page_set,
67       name='compression: javascript')
68
69
70 class Page5(SmokePage):
71
72   """
73   Why: Check data compression
74   """
75
76   def __init__(self, page_set):
77     super(Page5, self).__init__(
78       url='http://aws1.mdw.la/static/',
79       page_set=page_set,
80       name='compression: css')
81
82
83 class Page6(SmokePage):
84
85   """
86   Why: Expect 'malware ahead' page. Use a short navigation timeout because no
87   response will be received.
88   """
89
90   def __init__(self, page_set):
91     super(Page6, self).__init__(
92       url='http://www.ianfette.org/',
93       page_set=page_set,
94       name='safebrowsing')
95
96   def RunNavigateSteps(self, action_runner):
97     action_runner.NavigateToPage(self, timeout_seconds=5)
98
99
100 class SmokePageSet(page_set_module.PageSet):
101
102   """ Chrome proxy test sites """
103
104   def __init__(self):
105     super(SmokePageSet, self).__init__(
106       archive_data_file='../data/chrome_proxy_smoke.json')
107
108     self.AddPage(Page1(self))
109     self.AddPage(Page2(self))
110     self.AddPage(Page3(self))
111     self.AddPage(Page4(self))
112     self.AddPage(Page5(self))
113     self.AddPage(Page6(self))