[go: nahoru, domu]

[Fuchsia] Combine logic for merging manifest fragments in Fuchsia tests.

Remove need to call cmc_merge twice for code coverage test targets.

Change-Id: I345b5622bbaac10a23caa88f1df6289ada4435a4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2749053
Auto-Submit: Chong Gu <chonggu@google.com>
Commit-Queue: Chong Gu <chonggu@google.com>
Commit-Queue: John Chen <johnchen@chromium.org>
Reviewed-by: John Chen <johnchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#861779}
diff --git a/testing/test.gni b/testing/test.gni
index 2708c5f..22c5513 100644
--- a/testing/test.gni
+++ b/testing/test.gni
@@ -237,35 +237,28 @@
     # everything added via additional_manifests
     if (!defined(invoker.manifest)) {
       if (!defined(invoker.additional_manifests)) {
-        manifest = "//build/config/fuchsia/tests-with-exec.cmx"
+        manifest_fragments = [ "//build/config/fuchsia/tests-with-exec.cmx" ]
       } else {
-        manifest = "//build/config/fuchsia/test/minimum_capabilities.test-cmx"
+        manifest_fragments =
+            [ "//build/config/fuchsia/test/minimum_capabilities.test-cmx" ]
       }
     } else {
-      manifest = invoker.manifest
+      manifest_fragments = [ invoker.manifest ]
     }
 
     if (defined(invoker.additional_manifests)) {
-      combined_manifest = "${target_name}.test-cmx"
-      cmc_merge(combined_manifest) {
-        sources = [ manifest ]
-        sources += invoker.additional_manifests
-        output_name = target_name
-      }
-      manifest = "${target_out_dir}/${combined_manifest}"
+      manifest_fragments += invoker.additional_manifests
     }
-
     if (use_clang_coverage) {
-      component_with_coverage_manifest = "${target_name}-coverage.test-cmx"
-      cmc_merge(component_with_coverage_manifest) {
-        sources = [
-          "//build/config/fuchsia/add_DebugData_service.test-cmx",
-          manifest,
-        ]
-        output_name = target_name
-      }
-      manifest = "${target_out_dir}/${component_with_coverage_manifest}"
+      manifest_fragments +=
+          [ "//build/config/fuchsia/add_DebugData_service.test-cmx" ]
     }
+    combined_manifest = "${target_name}.test-cmx"
+    cmc_merge(combined_manifest) {
+      sources = manifest_fragments
+      output_name = target_name
+    }
+    manifest = "${target_out_dir}/${combined_manifest}"
 
     fuchsia_package_runner(target_name) {
       is_test_exe = true
@@ -285,13 +278,7 @@
     cr_fuchsia_package(_pkg_target) {
       binary = ":$_exec_target"
       package_name_override = _output_name
-      deps = []
-      if (use_clang_coverage) {
-        deps += [ ":$component_with_coverage_manifest" ]
-      }
-      if (defined(invoker.additional_manifests)) {
-        deps += [ ":$combined_manifest" ]
-      }
+      deps = [ ":$combined_manifest" ]
     }
 
     executable(_exec_target) {