Index: build/android/enable_asserts.py |
diff --git a/build/android/enable_asserts.py b/build/android/enable_asserts.py |
index 0e30bc2a1736d529511b038007f6e9bc707c2b7e..8fb7dca4725fe884af73115b0751d68d74f99940 100755 |
--- a/build/android/enable_asserts.py |
+++ b/build/android/enable_asserts.py |
@@ -6,33 +6,37 @@ |
"""Enables dalvik vm asserts in the android device.""" |
-from pylib import android_commands |
-from pylib.device import device_utils |
-import optparse |
+import argparse |
import sys |
+from pylib.device import device_utils |
+ |
+ |
+def main(): |
+ parser = argparse.ArgumentParser() |
-def main(argv): |
- option_parser = optparse.OptionParser() |
- option_parser.add_option('--enable_asserts', dest='set_asserts', |
- action='store_true', default=None, |
+ set_asserts_group = parser.add_mutually_exclusive_group(required=True) |
+ set_asserts_group.add_argument( |
+ '--enable_asserts', dest='set_asserts', action='store_true', |
help='Sets the dalvik.vm.enableassertions property to "all"') |
- option_parser.add_option('--disable_asserts', dest='set_asserts', |
- action='store_false', default=None, |
+ set_asserts_group.add_argument( |
+ '--disable_asserts', dest='set_asserts', action='store_false', |
help='Removes the dalvik.vm.enableassertions property') |
- options, _ = option_parser.parse_args(argv) |
+ |
+ args = parser.parse_args() |
# TODO(jbudorick): Accept optional serial number and run only for the |
# specified device when present. |
- devices = android_commands.GetAttachedDevices() |
- for device in [device_utils.DeviceUtils(serial) for serial in devices]: |
- if options.set_asserts != None: |
- if device.SetJavaAsserts(options.set_asserts): |
- # TODO(jbudorick) How to best do shell restarts after the |
- # android_commands refactor? |
- device.RunShellCommand('stop') |
- device.RunShellCommand('start') |
+ devices = device_utils.DeviceUtils.parallel() |
+ |
+ def set_java_asserts_and_restart(device): |
+ if device.SetJavaAsserts(args.set_asserts): |
+ device.RunShellCommand('stop') |
+ device.RunShellCommand('start') |
+ |
+ devices.pMap(set_java_asserts_and_restart) |
+ return 0 |
if __name__ == '__main__': |
- main(sys.argv) |
+ sys.exit(main()) |