| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright 2014 the V8 project authors. All rights reserved. | 2 # Copyright 2014 the V8 project 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 from collections import namedtuple | 6 from collections import namedtuple |
| 7 import coverage | 7 import coverage |
| 8 import json | 8 import json |
| 9 from mock import DEFAULT | 9 from mock import DEFAULT |
| 10 from mock import MagicMock | 10 from mock import MagicMock |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 61 "main": "run.js", | 61 "main": "run.js", |
| 62 "flags": ["--flag2"], | 62 "flags": ["--flag2"], |
| 63 "results_regexp": "^DeltaBlue: (.+)$"}, | 63 "results_regexp": "^DeltaBlue: (.+)$"}, |
| 64 {"name": "ShouldntRun", | 64 {"name": "ShouldntRun", |
| 65 "path": ["."], | 65 "path": ["."], |
| 66 "archs": ["arm"], | 66 "archs": ["arm"], |
| 67 "main": "run.js"}, | 67 "main": "run.js"}, |
| 68 ] | 68 ] |
| 69 } | 69 } |
| 70 | 70 |
| 71 V8_GENERIC_JSON = { |
| 72 "path": ["."], |
| 73 "binary": "cc", |
| 74 "flags": ["--flag"], |
| 75 "generic": True, |
| 76 "run_count": 1, |
| 77 "units": "ms", |
| 78 } |
| 79 |
| 71 Output = namedtuple("Output", "stdout, stderr") | 80 Output = namedtuple("Output", "stdout, stderr") |
| 72 | 81 |
| 73 class BenchmarksTest(unittest.TestCase): | 82 class BenchmarksTest(unittest.TestCase): |
| 74 @classmethod | 83 @classmethod |
| 75 def setUpClass(cls): | 84 def setUpClass(cls): |
| 76 cls.base = path.dirname(path.dirname(path.abspath(__file__))) | 85 cls.base = path.dirname(path.dirname(path.abspath(__file__))) |
| 77 sys.path.append(cls.base) | 86 sys.path.append(cls.base) |
| 78 cls._cov = coverage.coverage( | 87 cls._cov = coverage.coverage( |
| 79 include=([os.path.join(cls.base, "run_benchmarks.py")])) | 88 include=([os.path.join(cls.base, "run_benchmarks.py")])) |
| 80 cls._cov.start() | 89 cls._cov.start() |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 288 self._WriteTestInput(V8_JSON) | 297 self._WriteTestInput(V8_JSON) |
| 289 self._MockCommand(["."], ["x\nRichaards: 1.234\nDeltaBlue: 10657567\ny\n"]) | 298 self._MockCommand(["."], ["x\nRichaards: 1.234\nDeltaBlue: 10657567\ny\n"]) |
| 290 self.assertEquals(1, self._CallMain()) | 299 self.assertEquals(1, self._CallMain()) |
| 291 self._VerifyResults("test", "score", [ | 300 self._VerifyResults("test", "score", [ |
| 292 {"name": "Richards", "results": [], "stddev": ""}, | 301 {"name": "Richards", "results": [], "stddev": ""}, |
| 293 {"name": "DeltaBlue", "results": ["10657567"], "stddev": ""}, | 302 {"name": "DeltaBlue", "results": ["10657567"], "stddev": ""}, |
| 294 ]) | 303 ]) |
| 295 self._VerifyErrors( | 304 self._VerifyErrors( |
| 296 ["Regexp \"^Richards: (.+)$\" didn't match for benchmark Richards."]) | 305 ["Regexp \"^Richards: (.+)$\" didn't match for benchmark Richards."]) |
| 297 self._VerifyMock(path.join("out", "x64.release", "d7"), "--flag", "run.js") | 306 self._VerifyMock(path.join("out", "x64.release", "d7"), "--flag", "run.js") |
| 307 |
| 308 def testOneRunGeneric(self): |
| 309 test_input = dict(V8_GENERIC_JSON) |
| 310 self._WriteTestInput(test_input) |
| 311 self._MockCommand(["."], [ |
| 312 "Trace(Test1), Result(1.234), StdDev(0.23)\n" |
| 313 "Trace(Test2), Result(10657567), StdDev(106)\n"]) |
| 314 self.assertEquals(0, self._CallMain()) |
| 315 self._VerifyResults("test", "ms", [ |
| 316 {"name": "Test1", "results": ["1.234"], "stddev": "0.23"}, |
| 317 {"name": "Test2", "results": ["10657567"], "stddev": "106"}, |
| 318 ]) |
| 319 self._VerifyErrors([]) |
| 320 self._VerifyMock(path.join("out", "x64.release", "cc"), "--flag", "") |
| OLD | NEW |