bazelbuild / bazelbuild/rules_apple

State of code coverage?

Open
#338 20 comments 2 reactions 0 assignees View on GitHub
P3 type: feature request
Dominant language
Starlark
Stars
593
Forks
334
Avg merge
16h 48m
Merged PRs (30d)
9

Description

I've been looking through bazel/rules_apple/apple_support/rules_swift and it appears that there's a decent amount of integration for supporting code coverage that could work for iOS. But it seems like some critical pieces are not hooked up, like [empty filegroups](https://github.com/bazelbuild/apple_support/blob/77c9d5371949352c00bc74d4755c93e00199172b/tools/BUILD#L3-L9), [stub binaries](https://github.com/bazelbuild/bazel/blob/34bf56f25eb1bed7fbd5c4cf7bae15bf461cf904/tools/objc/gcov_stub) and variables that [wouldn't be passed through to iOS tests](https://github.com/bazelbuild/bazel/blob/34bf56f25eb1bed7fbd5c4cf7bae15bf461cf904/tools/test/collect_coverage.sh#L79).

What's the plan with supporting code coverage for iOS? Is this something that's already supported inside of Google but not in the public for some reason?

Contributor guide

Open the contributing guide

Research direction

Start by reading bazel/rules_apple/apple_support/rules_swift and the referenced empty filegroups in tools/BUILD. Compare the stub binary in tools/objc/gcov_stub with tools/test/collect_coverage.sh, focusing on the variables not passed to iOS tests. Done would require an agreed implementation plan and demonstrated iOS test coverage support.

Written by the indexing model from the issue text.

Assessment

Domain
build-system, mobile-dev, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.