|  | # Generating and viewing Tint code-coverage | 
|  |  | 
|  | Requirements: | 
|  |  | 
|  | * Host running Linux or macOS | 
|  | * Clang toolchain on the `PATH` environment variable | 
|  |  | 
|  | ## Building Tint with coverage generation enabled | 
|  |  | 
|  | Follow the steps [to build Tint with CMake](../building.md), but include the additional `-DDAWN_EMIT_COVERAGE=1` CMake flag. | 
|  |  | 
|  | ## Generate coverage information | 
|  |  | 
|  | Use the `<tint>/tools/tint-generate-coverage` script to run the tint executable or unit tests and generate the coverage information. | 
|  |  | 
|  | The script takes the executable to invoke as the first command line argument, followed by additional arguments to pass to the executable. | 
|  |  | 
|  | For example, to see the code coverage for all unit tests, run: | 
|  | `<tint>/tools/tint-generate-coverage <build>/tint_unittests --gtest_brief` | 
|  |  | 
|  | The script will emit two files at the root of the tint directory: | 
|  |  | 
|  | * `coverage.summary` - A text file giving a coverage summary for all Tint source files. | 
|  | * `lcov.info` - A binary coverage file that can be consumed with the [VSCode Coverage Gutters](https://marketplace.visualstudio.com/items?itemName=ryanluker.vscode-coverage-gutters) extension. |