summaryrefslogtreecommitdiffstats
path: root/tools/gypv8sh.py
diff options
context:
space:
mode:
authorscr@chromium.org <scr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-18 17:47:35 +0000
committerscr@chromium.org <scr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-18 17:47:35 +0000
commit0395d7a8d1d6c4e969fffd44edf0ad2bb0f29731 (patch)
tree625b62ab8465fb0c7e431ef150564d6ca19bb54b /tools/gypv8sh.py
parentce24f5b5407b15f0500392731064f95e7217697f (diff)
downloadchromium_src-0395d7a8d1d6c4e969fffd44edf0ad2bb0f29731.zip
chromium_src-0395d7a8d1d6c4e969fffd44edf0ad2bb0f29731.tar.gz
chromium_src-0395d7a8d1d6c4e969fffd44edf0ad2bb0f29731.tar.bz2
Revert 89605 - Support automatic javascript test registry in gtest when creating WebUI tests.
The goal was to support something as simple as the following, where the tests in the javascript files would be 1st class GTESTs, supporting FLAKY_, DISABLED_, etc, and registered at linker_initialization time. WEB_UI_BROWSER_TEST_JS(WebUIBrowserTest, TestJSPass, FILE_PATH_LITERAL("sample_passing.js")) { ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUIDownloadsURL)); } WEB_UI_BROWSER_TEST_JS_FALSE(WebUIBrowserTest, TestJSFail, FILE_PATH_LITERAL("sample_failing.js")) { ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUIDownloadsURL)); } http://www.chromium.org/Home/domui-testing In order to support linker init time, I had to modify path_service to support Unregistration, and chrome_paths to allow multiple invocations. BUG=82437 R=estade@chromium.org,jhawkins@chromium.org TEST=browser_tests --gtest_filter=WebUIBrowserTest* Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=89453 Review URL: http://codereview.chromium.org/7087014 TBR=scr@chromium.org Review URL: http://codereview.chromium.org/7189052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@89607 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/gypv8sh.py')
-rw-r--r--tools/gypv8sh.py74
1 files changed, 0 insertions, 74 deletions
diff --git a/tools/gypv8sh.py b/tools/gypv8sh.py
deleted file mode 100644
index fddd6b2..0000000
--- a/tools/gypv8sh.py
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/usr/bin/env python
-# Copyright (c) 2011 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""This script is used by chrome_tests.gypi's js2webui action to maintain the
-argument lists and to generate inlinable tests.
-
-Usage:
- python tools/gypv8sh.py -p product_dir path/to/javascript2webui.js
- python tools/gypv8sh.py -t # print test_harnesses
- python tools/gypv8sh.py -i # print inputs
- python tools/gypv8sh.py -o # print outputs
-"""
-
-try:
- import json
-except ImportError:
- import simplejson as json
-import optparse
-import os
-import subprocess
-import sys
-
-# Please adjust the following to edit or add new javascript webui tests.
-rules = [
- [
- 'WebUIBrowserTestPass',
- 'test/data/webui/sample_pass.js',
- 'browser/ui/webui/web_ui_browsertest-inl.h',
- ],
-]
-
-def main ():
- """Run the program"""
- # For options -t, -i, & -o, we print the "column" of the |rules|. We keep a
- # set of indices to print in |print_rule_indices| and print them in sorted
- # order if non-empty.
- parser = optparse.OptionParser()
- parser.set_usage(
- "%prog [-v][-n] --product_dir PRODUCT_DIR -or- "
- "%prog [-v][-n] (-i|-t|-o)")
- parser.add_option('-v', '--verbose', action='store_true')
- parser.add_option('-n', '--impotent', action='store_true',
- help="don't execute; just print (as if verbose)")
- parser.add_option(
- '-p', '--product_dir',
- help='for gyp to set the <(PRODUCT_DIR) for running v8_shell')
- parser.add_option('-t', '--test_fixture', action='store_const', const=0,
- dest='print_rule_index', help='print test_fixtures')
- parser.add_option('-i', '--in', action='store_const', const=1,
- dest='print_rule_index', help='print inputs')
- parser.add_option('-o', '--out', action='store_const', const=2,
- dest='print_rule_index', help='print outputs')
- (opts, args) = parser.parse_args()
-
- if (opts.print_rule_index != None):
- for rule in rules:
- print rule[opts.print_rule_index]
- else:
- if not opts.product_dir:
- parser.error("--product_dir option is required")
- v8_shell = os.path.join(opts.product_dir, 'v8_shell')
- jsfilename = args[0]
- for rule in rules:
- arguments = [jsfilename, rule[0], rule[1], os.path.basename(rule[1])]
- cmd = [v8_shell, '-e', "arguments=" + json.dumps(arguments), jsfilename]
- if opts.verbose or opts.impotent:
- print cmd
- if not opts.impotent:
- sys.exit(subprocess.call(cmd, stdout=open(rule[2],'w+')))
-
-if __name__ == '__main__':
- sys.exit(main())