| OLD | NEW |
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import contextlib | 5 import contextlib |
| 6 import httplib | 6 import httplib |
| 7 import logging | 7 import logging |
| 8 import os | 8 import os |
| 9 import tempfile | 9 import tempfile |
| 10 import time | 10 import time |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 103 test_data_paths: A list of files or directories relative to |dest_dir| | 103 test_data_paths: A list of files or directories relative to |dest_dir| |
| 104 which should be copied to the device. The paths must exist in | 104 which should be copied to the device. The paths must exist in |
| 105 |CHROME_DIR|. | 105 |CHROME_DIR|. |
| 106 dest_dir: Absolute path to copy to on the device. | 106 dest_dir: Absolute path to copy to on the device. |
| 107 """ | 107 """ |
| 108 for p in test_data_paths: | 108 for p in test_data_paths: |
| 109 self.adb.PushIfNeeded( | 109 self.adb.PushIfNeeded( |
| 110 os.path.join(constants.CHROME_DIR, p), | 110 os.path.join(constants.CHROME_DIR, p), |
| 111 os.path.join(dest_dir, p)) | 111 os.path.join(dest_dir, p)) |
| 112 | 112 |
| 113 def LinkSdCardPathsToTempDir(self, paths): | |
| 114 """Link |paths| which are under sdcard to constants.TEST_DATA_DIR. | |
| 115 | |
| 116 For example, the test data '/sdcard/my_data' will be linked to | |
| 117 'TEST_DATA_DIR/my_data'. | |
| 118 | |
| 119 Args: | |
| 120 paths: A list of files and directories relative to /sdcard. | |
| 121 """ | |
| 122 links = set() | |
| 123 for path in paths: | |
| 124 link_name = os.path.dirname(path) | |
| 125 assert link_name, 'Linked paths must be in a subdir of /sdcard/.' | |
| 126 link_name = link_name.split('/')[0] | |
| 127 if link_name not in links: | |
| 128 mapped_device_path = constants.TEST_DATA_DIR + '/' + link_name | |
| 129 # Unlink the mapped_device_path at first in case it was mapped to | |
| 130 # a wrong path. Add option '-r' becuase the old path could be a dir. | |
| 131 self.adb.RunShellCommand('rm -r %s' % mapped_device_path) | |
| 132 self.adb.RunShellCommand( | |
| 133 'ln -s /sdcard/%s %s' % (link_name, mapped_device_path)) | |
| 134 links.add(link_name) | |
| 135 | |
| 136 def LaunchTestHttpServer(self, document_root, port=None, | 113 def LaunchTestHttpServer(self, document_root, port=None, |
| 137 extra_config_contents=None): | 114 extra_config_contents=None): |
| 138 """Launches an HTTP server to serve HTTP tests. | 115 """Launches an HTTP server to serve HTTP tests. |
| 139 | 116 |
| 140 Args: | 117 Args: |
| 141 document_root: Document root of the HTTP server. | 118 document_root: Document root of the HTTP server. |
| 142 port: port on which we want to the http server bind. | 119 port: port on which we want to the http server bind. |
| 143 extra_config_contents: Extra config contents for the HTTP server. | 120 extra_config_contents: Extra config contents for the HTTP server. |
| 144 """ | 121 """ |
| 145 self._http_server = lighttpd_server.LighttpdServer( | 122 self._http_server = lighttpd_server.LighttpdServer( |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 227 # Wait for 2 seconds then restart. | 204 # Wait for 2 seconds then restart. |
| 228 time.sleep(2) | 205 time.sleep(2) |
| 229 if not server_ready: | 206 if not server_ready: |
| 230 logging.error(';'.join(error_msgs)) | 207 logging.error(';'.join(error_msgs)) |
| 231 raise Exception('Can not start the test spawner server.') | 208 raise Exception('Can not start the test spawner server.') |
| 232 self._PushTestServerPortInfoToDevice() | 209 self._PushTestServerPortInfoToDevice() |
| 233 self._spawner_forwarder = Forwarder( | 210 self._spawner_forwarder = Forwarder( |
| 234 self.adb, | 211 self.adb, |
| 235 [(self.test_server_spawner_port, self.test_server_spawner_port)], | 212 [(self.test_server_spawner_port, self.test_server_spawner_port)], |
| 236 self.tool, '127.0.0.1', self.build_type) | 213 self.tool, '127.0.0.1', self.build_type) |
| OLD | NEW |