Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # | 2 # |
| 3 # Copyright 2013 The Chromium Authors. All rights reserved. | 3 # Copyright 2013 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 """Runs all types of tests from one unified interface.""" | 7 """Runs all types of tests from one unified interface.""" |
| 8 | 8 |
| 9 import argparse | 9 import argparse |
| 10 import collections | 10 import collections |
| 11 import contextlib | 11 import contextlib |
| 12 import itertools | 12 import itertools |
| 13 import logging | 13 import logging |
| 14 import os | 14 import os |
| 15 import shutil | 15 import shutil |
| 16 import signal | 16 import signal |
| 17 import subprocess | |
| 17 import sys | 18 import sys |
| 18 import threading | 19 import threading |
| 19 import traceback | 20 import traceback |
| 20 import unittest | 21 import unittest |
| 21 | 22 |
| 22 # Import _strptime before threaded code. datetime.datetime.strptime is | 23 # Import _strptime before threaded code. datetime.datetime.strptime is |
| 23 # threadsafe except for the initial import of the _strptime module. | 24 # threadsafe except for the initial import of the _strptime module. |
| 24 # See http://crbug.com/724524 and https://bugs.python.org/issue7980. | 25 # See http://crbug.com/724524 and https://bugs.python.org/issue7980. |
| 25 import _strptime # pylint: disable=unused-import | 26 import _strptime # pylint: disable=unused-import |
| 26 | 27 |
| (...skipping 752 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 779 shutil.copyfileobj(src, dst) | 780 shutil.copyfileobj(src, dst) |
| 780 dst.close() | 781 dst.close() |
| 781 logging.critical( | 782 logging.critical( |
| 782 'Logcat: %s', logdog_helper.get_viewer_url('unified_logcats')) | 783 'Logcat: %s', logdog_helper.get_viewer_url('unified_logcats')) |
| 783 | 784 |
| 784 | 785 |
| 785 logcats_uploader = contextlib_ext.Optional( | 786 logcats_uploader = contextlib_ext.Optional( |
| 786 upload_logcats_file(), | 787 upload_logcats_file(), |
| 787 'upload_logcats_file' in args and args.upload_logcats_file) | 788 'upload_logcats_file' in args and args.upload_logcats_file) |
| 788 | 789 |
| 790 if 'apk_under_test' in args and args.apk_under_test: | |
| 791 subprocess.check_call( | |
| 792 'unzip -o %s -d %s' % (args.apk_under_test, | |
| 793 constants.GetOutDirectory()), | |
| 794 shell=True) | |
|
mikecase (-- gone --)
2017/07/11 21:42:01
Would it make more sense for the stack/tombstone s
jbudorick
2017/07/12 20:57:28
We had discussed doing the latter last week, w/ th
BigBossZhiling
2017/07/17 06:42:58
I just added the unzip logic in tombstones.py, bec
| |
| 795 | |
| 789 ### Set up test objects. | 796 ### Set up test objects. |
| 790 | 797 |
| 791 env = environment_factory.CreateEnvironment(args, infra_error) | 798 env = environment_factory.CreateEnvironment(args, infra_error) |
| 792 test_instance = test_instance_factory.CreateTestInstance(args, infra_error) | 799 test_instance = test_instance_factory.CreateTestInstance(args, infra_error) |
| 793 test_run = test_run_factory.CreateTestRun( | 800 test_run = test_run_factory.CreateTestRun( |
| 794 args, env, test_instance, infra_error) | 801 args, env, test_instance, infra_error) |
| 795 | 802 |
| 796 ### Run. | 803 ### Run. |
| 797 | 804 |
| 798 with json_writer, logcats_uploader, env, test_instance, test_run: | 805 with json_writer, logcats_uploader, env, test_instance, test_run: |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 937 if e.is_infra_error: | 944 if e.is_infra_error: |
| 938 return constants.INFRA_EXIT_CODE | 945 return constants.INFRA_EXIT_CODE |
| 939 return constants.ERROR_EXIT_CODE | 946 return constants.ERROR_EXIT_CODE |
| 940 except: # pylint: disable=W0702 | 947 except: # pylint: disable=W0702 |
| 941 logging.exception('Unrecognized error occurred.') | 948 logging.exception('Unrecognized error occurred.') |
| 942 return constants.ERROR_EXIT_CODE | 949 return constants.ERROR_EXIT_CODE |
| 943 | 950 |
| 944 | 951 |
| 945 if __name__ == '__main__': | 952 if __name__ == '__main__': |
| 946 sys.exit(main()) | 953 sys.exit(main()) |
| OLD | NEW |