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

Side by Side Diff: scripts/slave/unittests/telemetry_test.py

Issue 545803002: Update buildbots to parse new telemetry JSON format. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/build.git@master
Patch Set: Added unit tests and removed debugging code 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 unified diff | Download patch
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """Unit tests for telemetry.py. 6 """Unit tests for telemetry.py.
7 7
8 This is a basic check that telemetry.py forms commands properly. 8 This is a basic check that telemetry.py forms commands properly.
9 9
10 """ 10 """
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
48 def setUp(self): 48 def setUp(self):
49 super(TelemetryTest, self).setUp() 49 super(TelemetryTest, self).setUp()
50 50
51 self.telemetry = os.path.join(SCRIPT_DIR, '..', 'telemetry.py') 51 self.telemetry = os.path.join(SCRIPT_DIR, '..', 'telemetry.py')
52 self.capture = chromium_utils.FilterCapture() 52 self.capture = chromium_utils.FilterCapture()
53 53
54 def testSimpleCommand(self): 54 def testSimpleCommand(self):
55 fp = self._GetDefaultFactoryProperties() 55 fp = self._GetDefaultFactoryProperties()
56 56
57 cmd = [self.telemetry, '--print-cmd', 57 cmd = [self.telemetry, '--print-cmd',
58 '--factory-properties=%s' % json.dumps(fp)] 58 '--factory-properties=%s' % json.dumps(fp),
59 '--chart-output-filename=name.out']
59 60
60 ret = runScript(cmd, filter_obj=self.capture, print_cmd=False) 61 ret = runScript(cmd, filter_obj=self.capture, print_cmd=False)
61 self.assertEqual(ret, 0) 62 self.assertEqual(ret, 0)
62 63
63 runtest = os.path.abspath(os.path.join(SCRIPT_DIR, '..', 'runtest.py')) 64 runtest = os.path.abspath(os.path.join(SCRIPT_DIR, '..', 'runtest.py'))
64 65
65 expectedText = ([ 66 expectedText = ([
66 '\'%s\' ' % sys.executable + 67 '\'%s\' ' % sys.executable +
67 '\'%s\' \'--run-python-script\' \'--target\' \'Release\' ' % runtest + 68 '\'%s\' \'--run-python-script\' \'--target\' \'Release\' ' % runtest +
68 '\'--no-xvfb\' ' + 69 '\'--no-xvfb\' ' +
69 '\'--factory-properties=' + 70 '\'--factory-properties=' +
70 '{"target": "Release", ' + 71 '{"target": "Release", ' +
71 '"build_dir": "src/out", "perf_id": "android-gn", ' + 72 '"build_dir": "src/out", "perf_id": "android-gn", ' +
72 '"step_name": "sunspider", "test_name": "sunspider", ' + 73 '"step_name": "sunspider", "test_name": "sunspider", ' +
73 '"target_platform": "linux2", "target_os": "android", ' + 74 '"target_platform": "linux2", "target_os": "android", ' +
74 '"show_perf_results": true}\' ' + 75 '"show_perf_results": true}\' ' +
75 '\'src/build/android/test_runner.py\' \'perf\' \'-v\' ' + 76 '\'src/build/android/test_runner.py\' \'perf\' \'-v\' ' +
76 '\'--release\' ' + 77 '\'--release\' ' +
77 '\'--single-step\' ' + 78 '\'--single-step\' ' +
78 '\'--\' ' + 79 '\'--\' ' +
79 '\'src/tools/perf/run_benchmark\' \'-v\' ' + 80 '\'src/tools/perf/run_benchmark\' \'-v\' ' +
80 '\'--output-format=buildbot\' ' + 81 '\'--output-format=chartjson\' ' +
81 '\'--browser=android-chrome-shell\' \'sunspider\'' 82 '\'--browser=android-chrome-shell\' \'sunspider\' ' +
83 '\'--output=name.out\''
82 ]) 84 ])
83 85
84 self.assertEqual(expectedText, self.capture.text) 86 self.assertEqual(expectedText, self.capture.text)
85 87
86 def testExtraArg(self): 88 def testExtraArg(self):
87 fp = self._GetDefaultFactoryProperties() 89 fp = self._GetDefaultFactoryProperties()
88 fp['extra_args'] = ['--profile-dir=fake_dir'] 90 fp['extra_args'] = ['--profile-dir=fake_dir']
89 91
90 cmd = [self.telemetry, '--print-cmd', 92 cmd = [self.telemetry, '--print-cmd',
91 '--factory-properties=%s' % json.dumps(fp)] 93 '--factory-properties=%s' % json.dumps(fp),
94 '--chart-output-filename=tmpfile']
92 95
93 ret = runScript(cmd, filter_obj=self.capture, print_cmd=False) 96 ret = runScript(cmd, filter_obj=self.capture, print_cmd=False)
94 self.assertEqual(ret, 0) 97 self.assertEqual(ret, 0)
95 98
96 runtest = os.path.abspath(os.path.join(SCRIPT_DIR, '..', 'runtest.py')) 99 runtest = os.path.abspath(os.path.join(SCRIPT_DIR, '..', 'runtest.py'))
97 100
98 expectedText = ([ 101 expectedText = ([
99 '\'%s\' ' % sys.executable + 102 '\'%s\' ' % sys.executable +
100 '\'%s\' \'--run-python-script\' \'--target\' \'Release\' ' % runtest + 103 '\'%s\' \'--run-python-script\' \'--target\' \'Release\' ' % runtest +
101 '\'--no-xvfb\' ' + 104 '\'--no-xvfb\' ' +
102 '\'--factory-properties=' + 105 '\'--factory-properties=' +
103 '{"target": "Release", "build_dir": "src/out", ' + 106 '{"target": "Release", "build_dir": "src/out", ' +
104 '"extra_args": ["--profile-dir=fake_dir"], ' + 107 '"extra_args": ["--profile-dir=fake_dir"], ' +
105 '"perf_id": "android-gn", ' + 108 '"perf_id": "android-gn", ' +
106 '"step_name": "sunspider", "test_name": "sunspider", ' + 109 '"step_name": "sunspider", "test_name": "sunspider", ' +
107 '"target_platform": "linux2", "target_os": "android", ' + 110 '"target_platform": "linux2", "target_os": "android", ' +
108 '"show_perf_results": true}\' ' + 111 '"show_perf_results": true}\' ' +
109 '\'src/build/android/test_runner.py\' \'perf\' \'-v\' ' + 112 '\'src/build/android/test_runner.py\' \'perf\' \'-v\' ' +
110 '\'--release\' ' + 113 '\'--release\' ' +
111 '\'--single-step\' ' + 114 '\'--single-step\' ' +
112 '\'--\' ' + 115 '\'--\' ' +
113 '\'src/tools/perf/run_benchmark\' \'-v\' ' + 116 '\'src/tools/perf/run_benchmark\' \'-v\' ' +
114 '\'--output-format=buildbot\' ' + 117 '\'--output-format=chartjson\' ' +
115 '\'--profile-dir=fake_dir\' '+ 118 '\'--profile-dir=fake_dir\' '+
116 '\'--browser=android-chrome-shell\' \'sunspider\'' 119 '\'--browser=android-chrome-shell\' \'sunspider\' ' +
120 '\'--output=tmpfile\''
117 ]) 121 ])
118 122
119 self.assertEqual(expectedText, self.capture.text) 123 self.assertEqual(expectedText, self.capture.text)
120 124
121 if __name__ == '__main__': 125 if __name__ == '__main__':
122 unittest.main() 126 unittest.main()
OLDNEW
« scripts/slave/telemetry_utils.py ('K') | « scripts/slave/unittests/runtest_test.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698