OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # | 2 # |
3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 """Enables dalvik vm asserts in the android device.""" | 7 """Enables dalvik vm asserts in the android device.""" |
8 | 8 |
9 import argparse | 9 import argparse |
10 import sys | 10 import sys |
11 | 11 |
12 from pylib.device import device_blacklist | |
13 from pylib.device import device_utils | 12 from pylib.device import device_utils |
14 | 13 |
15 | 14 |
16 def main(): | 15 def main(): |
17 parser = argparse.ArgumentParser() | 16 parser = argparse.ArgumentParser() |
18 | 17 |
19 parser.add_argument('--blacklist-file', help='Device blacklist JSON file.') | |
20 | |
21 set_asserts_group = parser.add_mutually_exclusive_group(required=True) | 18 set_asserts_group = parser.add_mutually_exclusive_group(required=True) |
22 set_asserts_group.add_argument( | 19 set_asserts_group.add_argument( |
23 '--enable_asserts', dest='set_asserts', action='store_true', | 20 '--enable_asserts', dest='set_asserts', action='store_true', |
24 help='Sets the dalvik.vm.enableassertions property to "all"') | 21 help='Sets the dalvik.vm.enableassertions property to "all"') |
25 set_asserts_group.add_argument( | 22 set_asserts_group.add_argument( |
26 '--disable_asserts', dest='set_asserts', action='store_false', | 23 '--disable_asserts', dest='set_asserts', action='store_false', |
27 help='Removes the dalvik.vm.enableassertions property') | 24 help='Removes the dalvik.vm.enableassertions property') |
28 | 25 |
29 args = parser.parse_args() | 26 args = parser.parse_args() |
30 | 27 |
31 if args.blacklist_file: | |
32 blacklist = device_blacklist.Blacklist(args.blacklist_file) | |
33 else: | |
34 blacklist = None | |
35 | |
36 # TODO(jbudorick): Accept optional serial number and run only for the | 28 # TODO(jbudorick): Accept optional serial number and run only for the |
37 # specified device when present. | 29 # specified device when present. |
38 devices = device_utils.DeviceUtils.parallel( | 30 devices = device_utils.DeviceUtils.parallel() |
39 device_utils.DeviceUtils.HealthyDevices(blacklist)) | |
40 | 31 |
41 def set_java_asserts_and_restart(device): | 32 def set_java_asserts_and_restart(device): |
42 if device.SetJavaAsserts(args.set_asserts): | 33 if device.SetJavaAsserts(args.set_asserts): |
43 device.RunShellCommand('stop') | 34 device.RunShellCommand('stop') |
44 device.RunShellCommand('start') | 35 device.RunShellCommand('start') |
45 | 36 |
46 devices.pMap(set_java_asserts_and_restart) | 37 devices.pMap(set_java_asserts_and_restart) |
47 return 0 | 38 return 0 |
48 | 39 |
49 | 40 |
50 if __name__ == '__main__': | 41 if __name__ == '__main__': |
51 sys.exit(main()) | 42 sys.exit(main()) |
OLD | NEW |