Prepare the code to run ios tests with the standalone recipe.

The flags isolated-script-test-output and isolated-script-test-perf-output need to be consumed by the tests.

The generated .app folder in added in the data list of the gni file.
This will make it available in the runtime_deps file and thus will be populated to the swarming tasks.

Bug: webrtc:13556
Change-Id: I2c75774b847d9f686c3abc00ba0400bbc3fcefae
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/240520
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#36029}
This commit is contained in:
Jeremy Leconte
2022-02-18 10:16:32 +01:00
committed by WebRTC LUCI CQ
parent 18454b7720
commit d15f3e1220
3 changed files with 17 additions and 3 deletions

View File

@ -57,7 +57,7 @@ ABSL_FLAG(
"described by histogram.proto in "
"https://chromium.googlesource.com/catapult/.");
#else
#endif
ABSL_FLAG(std::string,
isolated_script_test_output,
@ -72,8 +72,6 @@ ABSL_FLAG(
"described by histogram.proto in "
"https://chromium.googlesource.com/catapult/.");
#endif
constexpr char kPlotAllMetrics[] = "all";
ABSL_FLAG(std::vector<std::string>,
plot,

View File

@ -900,6 +900,7 @@ class MetaBuildWrapper:
is_android = 'target_os="android"' in vals['gn_args']
is_linux = self.platform.startswith('linux') and not is_android
is_ios = 'target_os="ios"' in vals['gn_args']
if test_type == 'nontest':
self.WriteFailureAndRaise('We should not be isolating %s.' % target,
@ -932,6 +933,12 @@ class MetaBuildWrapper:
'--logcat-output-file', '${ISOLATED_OUTDIR}/logcats',
'--store-tombstones'
]
elif is_ios:
cmdline += [
vpython_exe, '../../tools_webrtc/flags_compatibility.py',
'bin/run_%s' % target, '--out-dir', '${ISOLATED_OUTDIR}'
]
extra_files.append('../../tools_webrtc/flags_compatibility.py')
else:
if test_type == 'raw':
cmdline += [vpython_exe, '../../tools_webrtc/flags_compatibility.py']

View File

@ -530,6 +530,15 @@ template("rtc_test") {
[ "//third_party/llvm-build/Release+Asserts/lib/libstdc++.so.6" ]
}
}
# TODO(crbug.com/webrtc/13556): Adding the .app folder in the runtime_deps
# shoulnd't be necessary. this code should be removed and the same solution
# as Chromium should be used.
if (is_ios) {
if (!defined(invoker.data)) {
data = []
}
data += [ "${root_out_dir}/${target_name}.app" ]
}
}
}