| Index: docs/ios/coverage.md | 
| diff --git a/docs/ios/coverage.md b/docs/ios/coverage.md | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..c0dab797dfded40516398a14ad02bd4080d04ed7 | 
| --- /dev/null | 
| +++ b/docs/ios/coverage.md | 
| @@ -0,0 +1,54 @@ | 
| +# Generate code coverage data | 
| + | 
| +1.  Setup: Code coverage is only supported for Debug-iphonesimulator builds. | 
| +    (gtest_include_ios_coverage, ENABLE_TEST_CODE_COVERAGE?) | 
| + | 
| +1.  Run a test target that supports code coverage, for example | 
| +    `ios_showcase_egtests`. Targets that support test target call | 
| +    `coverage_util::SetupIfNecessary()`. | 
| + | 
| +1.  Find the `coverage.profraw` in the Documents folder of the app. You can look | 
| +    in the console output of the instrumented target. For example: | 
| + | 
| +    ```Coverage data at: </Users/johndoe/Library/Developer/CoreSimulator/Devices/\ | 
| +    82D642FA-FC18-4EDB-AFE0-A17454804BE4/data/Containers/Data/Application/\ | 
| +    E6B2B898-CE13-4958-93F3-E8B500446381/Documents/coverage.profraw>``` | 
| + | 
| +1.  Create a `coverage.profdata` file out of the `coverage.profraw` file: | 
| + | 
| +    `xcrun llvm-profdata merge -o out/Debug-iphonesimulator/coverage.profdata | 
| +    path/to/coverage.profraw` | 
| + | 
| +1.  To see the **line coverage** for *all the instrumented source files*: | 
| + | 
| +    `xcrun llvm-cov show | 
| +    out/Debug-iphonesimulator/ios_showcase_egtests.app/ios_showcase_egtests | 
| +    -instr-profile=path/to/coverage.profdata -arch=x86_64` | 
| + | 
| +     | 
| + | 
| +    To see the **line coverage** for a *specific instrumented source | 
| +    file/folder* (e.g. `ios/showcase/core/app_delegate.mm`): | 
| + | 
| +    `xcrun llvm-cov show | 
| +    out/Debug-iphonesimulator/ios_showcase_egtests.app/ios_showcase_egtests | 
| +    -instr-profile=path/to/coverage.profdata -arch=x86_64 | 
| +    ios/showcase/core/app_delegate.mm` | 
| + | 
| +     | 
| + | 
| +    To see a **complete report**: | 
| + | 
| +    `xcrun llvm-cov report | 
| +    out/Debug-iphonesimulator/ios_showcase_egtests.app/ios_showcase_egtests | 
| +    -instr-profile=path/to/coverage.profdata -arch=x86_64` | 
| + | 
| +     | 
| + | 
| +    To see a **report** for a *folder/file* (e.g. `ios/showcase/core` folder): | 
| + | 
| +    `xcrun llvm-cov show | 
| +    out/Debug-iphonesimulator/ios_showcase_egtests.app/ios_showcase_egtests | 
| +    -instr-profile=path/to/coverage.profdata -arch=x86_64 ios/showcase/core` | 
| + | 
| +     | 
|  |