Coverage: Avoid double-counting of sub-dirs in component view.
[email protected],[email protected]
Change-Id: I7c192d6ef87ff08291574ba3c42aeeb8640d9306
Reviewed-on: https://chromium-review.googlesource.com/1056627
Reviewed-by: Abhishek Arya <[email protected]>
Commit-Queue: Abhishek Arya <[email protected]>
Cr-Commit-Position: refs/heads/master@{#558153}
diff --git a/tools/code_coverage/coverage.py b/tools/code_coverage/coverage.py
index b83c04d..4f73bd27 100755
--- a/tools/code_coverage/coverage.py
+++ b/tools/code_coverage/coverage.py
@@ -674,9 +674,19 @@
directory_to_component = component_mappings['dir-to-component']
component_to_directories = defaultdict(list)
- for directory in directory_to_component:
+ for directory in sorted(directory_to_component):
component = directory_to_component[directory]
- component_to_directories[component].append(directory)
+
+ # Check if we already added the parent directory of this directory. If yes,
+ # skip this sub-directory to avoid double-counting.
+ found_parent_directory = False
+ for component_directory in component_to_directories[component]:
+ if directory.startswith(component_directory + '/'):
+ found_parent_directory = True
+ break
+
+ if not found_parent_directory:
+ component_to_directories[component].append(directory)
return component_to_directories