| Index: tools/dom/dom.py
|
| diff --git a/tools/dom/dom.py b/tools/dom/dom.py
|
| index e45d820f9ffcb88e7235cd3d89d1ddec7deae0bd..458d39ce6cb008aadfa9ca480f3ef9b0d3ccb510 100755
|
| --- a/tools/dom/dom.py
|
| +++ b/tools/dom/dom.py
|
| @@ -34,7 +34,7 @@ def help():
|
|
|
| def analyze():
|
| ''' Runs the dart analyzer. '''
|
| - call([
|
| + return call([
|
| os.path.join(dart_out_dir, 'dart-sdk', 'bin', 'dart_analyzer'),
|
| os.path.join('tests', 'html', 'element_test.dart'),
|
| '--dart-sdk', 'sdk',
|
| @@ -43,7 +43,7 @@ def analyze():
|
|
|
| def build():
|
| ''' Builds the Dart binary '''
|
| - call([
|
| + return call([
|
| os.path.join('tools', 'build.py'),
|
| '--mode=release',
|
| '--arch=ia32',
|
| @@ -54,7 +54,7 @@ def dart2js():
|
| compile_dart2js(argv.pop(0), True)
|
|
|
| def dartc():
|
| - call([
|
| + return call([
|
| os.path.join('tools', 'test.py'),
|
| '-m',
|
| 'release',
|
| @@ -64,6 +64,21 @@ def dartc():
|
| 'none'
|
| ])
|
|
|
| +def docs():
|
| + return call([
|
| + os.path.join(dart_out_dir, 'dart-sdk', 'bin', 'dart'),
|
| + '--package-root=%s' % os.path.join(dart_out_dir, 'packages/'),
|
| + os.path.join('tools', 'dom', 'docs', 'bin', 'docs.dart'),
|
| + ])
|
| +
|
| +def test_docs():
|
| + return call([
|
| + os.path.join('tools', 'test.py'),
|
| + '--mode=release',
|
| + '--checked',
|
| + 'docs'
|
| + ])
|
| +
|
| def compile_dart2js(dart_file, checked):
|
| out_file = dart_file + '.js'
|
| dart2js_path = os.path.join(dart_out_dir, 'dart-sdk', 'bin', 'dart2js')
|
| @@ -82,14 +97,12 @@ def compile_dart2js(dart_file, checked):
|
|
|
| def gen():
|
| os.chdir(os.path.join('tools', 'dom', 'scripts'))
|
| - call([
|
| - 'go.sh',
|
| - ])
|
| + return call(os.path.join(os.getcwd(), 'go.sh'))
|
|
|
| def http_server():
|
| print('Browse tests at '
|
| '\033[94mhttp://localhost:5400/root_build/generated_tests/\033[0m')
|
| - call([
|
| + return call([
|
| utils.DartBinary(),
|
| os.path.join('tools', 'testing', 'dart', 'http_server.dart'),
|
| '--port=5400',
|
| @@ -103,7 +116,7 @@ def size_check():
|
| dart_file = os.path.join('samples', 'swarm', 'swarm.dart')
|
| out_file = compile_dart2js(dart_file, False)
|
|
|
| - subprocess.call([
|
| + return call([
|
| 'du',
|
| '-kh',
|
| '--apparent-size',
|
| @@ -139,11 +152,13 @@ def test_dart2js(browser, argv):
|
| print(
|
| 'Test commands should be followed by tests to run. Defaulting to html')
|
| cmd.append('html')
|
| - call(cmd)
|
| + return call(cmd)
|
|
|
| def call(args):
|
| - print (' '.join(args))
|
| - subprocess.call(args)
|
| + print ' '.join(args)
|
| + return subprocess.call(args,
|
| + stdout=subprocess.STDOUT,
|
| + stderr=subprocess.STDERR)
|
|
|
| def init_dir():
|
| ''' Makes sure that we're always rooted in the dart root folder.'''
|
| @@ -157,8 +172,10 @@ commands = {
|
| 'build': [build, 'Build dart in release mode'],
|
| 'dart2js': [dart2js, 'Run dart2js on the .dart file specified'],
|
| 'dartc': [dartc, 'Runs dartc in release mode'],
|
| + 'docs': [docs, 'Generates docs.json'],
|
| 'gen': [gen, 'Re-generate DOM generated files (run go.sh)'],
|
| 'size_check': [size_check, 'Check the size of dart2js compiled Swarm'],
|
| + 'test_docs': [test_docs, 'Tests docs.dart'],
|
| 'test_chrome': [test_chrome, 'Run tests in checked mode in Chrome.\n'
|
| '\t\tOptionally provide name of test to run.'],
|
| 'test_drt': [test_drt, 'Run tests in checked mode in DumpRenderTree.\n'
|
| @@ -170,10 +187,12 @@ commands = {
|
| }
|
|
|
| def main(argv):
|
| + success = True
|
| argv.pop(0)
|
|
|
| if not argv:
|
| help()
|
| + success = False
|
|
|
| while (argv):
|
| init_dir()
|
| @@ -181,8 +200,11 @@ def main(argv):
|
|
|
| if not command in commands:
|
| help();
|
| - return
|
| - commands[command][0]()
|
| + success = False
|
| + break
|
| + success = success and bool(commands[command][0]())
|
| +
|
| + sys.exit(not success)
|
|
|
| if __name__ == '__main__':
|
| main(sys.argv)
|
|
|