| Index: build/android/pylib/gtest/gtest_test_instance.py
|
| diff --git a/build/android/pylib/gtest/gtest_test_instance.py b/build/android/pylib/gtest/gtest_test_instance.py
|
| index f5b2c69ada928275590ee80b504ddd45e731baef..915164532f015df313c40e6944ad424cb65f76c7 100644
|
| --- a/build/android/pylib/gtest/gtest_test_instance.py
|
| +++ b/build/android/pylib/gtest/gtest_test_instance.py
|
| @@ -144,9 +144,30 @@ class GtestTestInstance(test_instance.TestInstance):
|
| self._shard_timeout = args.shard_timeout
|
| self._skip_clear_data = args.skip_clear_data
|
| self._suite = args.suite_name[0]
|
| + self._exe_path = None
|
|
|
| - self._exe_path = os.path.join(constants.GetOutDirectory(),
|
| - self._suite)
|
| + # GYP:
|
| + if args.executable_path:
|
| + self._exe_path = os.path.abspath(args.executable_path)
|
| + else:
|
| + # TODO(agrieve): Remove hardcoding after recipes are updated.
|
| + if self._suite == 'sandbox_linux_unittests':
|
| + exe_path = os.path.join(constants.GetOutDirectory(), 'obj', 'sandbox',
|
| + 'linux', 'sandbox_linux_unittests',
|
| + 'sandbox_linux_unittests')
|
| + elif self._suite == 'breakpad_unittests':
|
| + exe_path = os.path.join(constants.GetOutDirectory(), 'obj', 'breakpad',
|
| + 'breakpad_unittests', 'breakpad_unittests')
|
| + else:
|
| + exe_path = None
|
| +
|
| + if exe_path and os.path.exists(exe_path):
|
| + self._exe_path = exe_path
|
| + else:
|
| + # GYP location:
|
| + exe_path = os.path.join(constants.GetOutDirectory(), self._suite)
|
| + if os.path.exists(exe_path):
|
| + self._exe_path = exe_path
|
|
|
| incremental_part = ''
|
| if args.test_apk_incremental_install_script:
|
| @@ -171,8 +192,6 @@ class GtestTestInstance(test_instance.TestInstance):
|
| self._extras[EXTRA_SHARD_NANO_TIMEOUT] = int(1e9 * self._shard_timeout)
|
| self._shard_timeout = 900
|
|
|
| - if not os.path.exists(self._exe_path):
|
| - self._exe_path = None
|
| if not self._apk_helper and not self._exe_path:
|
| error_func('Could not find apk or executable for %s' % self._suite)
|
|
|
|
|