From 39e6dabed712f822ee59eea164eed740d9637d85 Mon Sep 17 00:00:00 2001 From: Eric Seidel Date: Thu, 23 Oct 2014 16:00:10 -0700 Subject: [PATCH] Teach tools/skydb how to handle paths This makes it much easier to hack on test cases. R=abarth@chromium.org Review URL: https://codereview.chromium.org/654543004 --- tools/skydb | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/tools/skydb b/tools/skydb index caa8f8093..5b3732fb2 100755 --- a/tools/skydb +++ b/tools/skydb @@ -6,6 +6,7 @@ import os import subprocess import sys +import urlparse BUILD_DIRECTORY = 'out' @@ -18,6 +19,19 @@ SUPPORTED_MIME_TYPES = [ 'text/plain', ] +def start_http_server_for_file(path): + HTTP_PORT = 9999 + directory = os.path.dirname(os.path.abspath(path)) + server_command = [ + 'python', + '-m', + 'SimpleHTTPServer', + str(HTTP_PORT) + ] + subprocess.Popen(server_command, cwd=directory) + return 'http://localhost:%s/%s' % (HTTP_PORT, os.path.basename(path)) + + def main(args): content_handlers = ['%s,%s' % (mime_type, 'mojo://sky_viewer/') for mime_type in SUPPORTED_MIME_TYPES] @@ -29,7 +43,12 @@ def main(args): 'mojo:window_manager', ] if args: - prompt_args = '--args-for=mojo://sky_debugger_prompt/ %s' % args[0] + url = args[0] + parse_result = urlparse.urlparse(url) + if not parse_result.scheme: + url = start_http_server_for_file(url) + + prompt_args = '--args-for=mojo://sky_debugger_prompt/ %s' % url shell_command.append(prompt_args) subprocess.check_call(shell_command) -- GitLab