| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # coding=utf-8 | 2 # coding=utf-8 |
| 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 ### | 7 ### |
| 8 # Run me to generate the documentation! | 8 # Run me to generate the documentation! |
| 9 ### | 9 ### |
| 10 | 10 |
| 11 # Line too long (NN/80) | 11 # Line too long (NN/80) |
| 12 # pylint: disable=C0301 | 12 # pylint: disable=C0301 |
| 13 | 13 |
| 14 """Test tracing and isolation infrastructure. | 14 """Test tracing and isolation infrastructure. |
| 15 | 15 |
| 16 Scripts are compartmentalized by their name: | 16 Scripts are compartmentalized by their name: |
| 17 - isolate_*.py: Executable isolation scripts. More information can be | 17 - isolate_*.py: Executable isolation scripts. More information can be |
| 18 found at | 18 found at |
| 19 http://chromium.org/developers/testing/isolated-testing | 19 http://chromium.org/developers/testing/isolated-testing |
| 20 - isolateserver_*.py: Tools to interact with the CAD server. The source code of | 20 - isolateserver_*.py: Tools to interact with the CAD server. The source code of |
| 21 the isolate server can be found at | 21 the isolate server can be found at |
| 22 http://src.chromium.org/viewvc/chrome/trunk/tools/isolate_
server/ | 22 http://src.chromium.org/viewvc/chrome/trunk/tools/isolate_
server/ |
| 23 - run_*.py: Tools to run tests. | 23 - run_*.py: Tools to run tests. |
| 24 - swarm_*.py: Swarm interaction scripts. More information can be found | 24 - swarm_*.py: Swarm interaction scripts. More information can be found |
| 25 at | 25 at |
| 26 http://chromium.org/developers/testing/isolated-testing/sw
arm | 26 http://chromium.org/developers/testing/isolated-testing/sw
arm |
| 27 - trace_*.py: Tracing infrastructure scripts. More information can be | 27 - trace_*.py: Tracing infrastructure scripts. More information can be |
| 28 found at | 28 found at |
| 29 http://chromium.org/developers/testing/tracing-tools | 29 http://chromium.org/developers/testing/tracing-tools |
| 30 - *_test_cases.py: Scripts specifically managing GTest executables. More | 30 - googletest/*.py: Scripts specifically managing GTest executables. More |
| 31 information about google-test can be found at | 31 information about googletest can be found at |
| 32 http://code.google.com/p/googletest/wiki/Primer | 32 http://code.google.com/p/googletest/wiki/Primer |
| 33 | 33 |
| 34 A few scripts have strict dependency rules: | 34 A few scripts have strict dependency rules: |
| 35 - run_isolated.py, shard_test_cases.py and trace_inputs.py depends on no other | 35 - run_isolated.py and trace_inputs.py depends on no other script so they can be |
| 36 script so they can be run outside the checkout. | 36 run outside the checkout. |
| 37 - The pure tracing scripts (trace_*.py) do not know about isolate | 37 - The pure tracing scripts (trace_*.py) do not know about isolate |
| 38 infrastructure. | 38 infrastructure. |
| 39 - Scripts without '_test_cases' suffix do not know about GTest. | 39 - Scripts without '_test_cases' suffix do not know about GTest. |
| 40 - Scripts without 'isolate_' prefix do not know about the isolation | 40 - Scripts without 'isolate_' prefix do not know about the isolation |
| 41 infrastructure. | 41 infrastructure. |
| 42 | 42 |
| 43 See http://dev.chromium.org/developers/testing/isolated-testing for more info. | 43 See http://dev.chromium.org/developers/testing/isolated-testing for more info. |
| 44 """ | 44 """ |
| 45 | 45 |
| 46 import os | 46 import os |
| 47 import sys | 47 import sys |
| 48 | 48 |
| 49 | 49 |
| 50 def main(): | 50 def main(): |
| 51 for i in sorted(os.listdir(os.path.dirname(os.path.abspath(__file__)))): | 51 for i in sorted(os.listdir(os.path.dirname(os.path.abspath(__file__)))): |
| 52 if not i.endswith('.py') or i == 'PRESUBMIT.py': | 52 if not i.endswith('.py') or i == 'PRESUBMIT.py': |
| 53 continue | 53 continue |
| 54 module = __import__(i[:-3]) | 54 module = __import__(i[:-3]) |
| 55 if hasattr(module, '__doc__'): | 55 if hasattr(module, '__doc__'): |
| 56 print module.__name__ | 56 print module.__name__ |
| 57 print ''.join(' %s\n' % i for i in module.__doc__.splitlines()) | 57 print ''.join(' %s\n' % i for i in module.__doc__.splitlines()) |
| 58 return 0 | 58 return 0 |
| 59 | 59 |
| 60 | 60 |
| 61 if __name__ == '__main__': | 61 if __name__ == '__main__': |
| 62 sys.exit(main()) | 62 sys.exit(main()) |
| OLD | NEW |