Index: sky/tools/test_perf |
diff --git a/sky/tools/test_perf b/sky/tools/test_perf |
index 70186b20f1bf18375ad8088bdbd87d4b049d9e0e..02d4ea095d541968f9df2af7f11e777001685975 100755 |
--- a/sky/tools/test_perf |
+++ b/sky/tools/test_perf |
@@ -5,7 +5,7 @@ |
import os |
import re |
-import skypy.paths as paths |
+from skypy.paths import Paths |
import subprocess |
import requests |
@@ -20,27 +20,6 @@ HTTP_PORT = 9999 |
DASHBOARD_URL = 'https://chromeperf.appspot.com/add_point' |
-def sky_tester_command(url): |
- content_handlers = ['%s,%s' % (mime_type, 'mojo://sky_viewer/') |
- for mime_type in SUPPORTED_MIME_TYPES] |
- return [ |
- paths.MOJO_SHELL_PATH, |
- '--args-for=mojo://native_viewport_service/ --use-headless-config --use-osmesa', |
- '--args-for=mojo://window_manager/ %s' % url, |
- '--content-handlers=%s' % ','.join(content_handlers), |
- '--url-mappings=mojo:window_manager=mojo://sky_tester/', |
- 'mojo:window_manager', |
- ] |
- |
- |
-def start_sky_server(port): |
- return subprocess.Popen([ |
- os.path.join(paths.SKY_TOOLS_DIRECTORY, 'sky_server'), |
- paths.SRC_ROOT, |
- str(port), |
- ]) |
- |
- |
def values_from_output(output): |
# Parse out the raw values from the PerfRunner output: |
# values 90, 89, 93 ms |
@@ -82,15 +61,33 @@ def send_json_to_dashboard(json): |
class PerfHarness(object): |
def __init__(self): |
self._sky_server = None |
+ self.paths = Paths(os.path.join('out', 'Debug')) |
def _start_server(self): |
- self._sky_server = start_sky_server(HTTP_PORT) |
+ return subprocess.Popen([ |
+ os.path.join(self.paths.sky_tools_directory, 'sky_server'), |
+ self.paths.src_root, |
+ str(HTTP_PORT), |
+ ]) |
+ |
+ def _sky_tester_command(self, url): |
+ content_handlers = ['%s,%s' % (mime_type, 'mojo://sky_viewer/') |
+ for mime_type in SUPPORTED_MIME_TYPES] |
+ return [ |
+ self.paths.mojo_shell_path, |
+ '--args-for=mojo://native_viewport_service/ --use-headless-config --use-osmesa', |
+ '--args-for=mojo://window_manager/ %s' % url, |
+ '--content-handlers=%s' % ','.join(content_handlers), |
+ '--url-mappings=mojo:window_manager=mojo://sky_tester/', |
+ 'mojo:window_manager', |
+ ] |
+ |
def main(self): |
test = 'http://localhost:9999/sky/benchmarks/layout/simple-blocks.sky' |
self._start_server() |
- output = subprocess.check_output(sky_tester_command(test)) |
+ output = subprocess.check_output(self._sky_tester_command(test)) |
values = values_from_output(output) |
json = create_json_blob(values) |
send_json_to_dashboard(json) |