# runtime/entrypoints/coverage.entrypoint.ts

> 13 lines of code and 2 definitions.

Tree: GovLab Docs
Language: typescript
Layer: runtime
Canonical: https://banes-lab.com/anatomy/docs#file-docs-runtime-entrypoints-coverage-entrypoint-ts
Source text: https://banes-lab.com/source/docs/runtime/entrypoints/coverage.entrypoint.ts.txt

Listed in [runtime/entrypoints](https://banes-lab.com/api/source/docs/runtime/entrypoints.md), before [runtime/entrypoints/document.entrypoint.ts](https://banes-lab.com/source/docs/runtime/entrypoints/document.entrypoint.ts.md).

## Definitions

- `argv` (lexical_declaration, line 9)
- `rows` (lexical_declaration, line 10)

## Contained in

- [runtime/entrypoints](https://banes-lab.com/anatomy/docs/folder-docs-runtime-entrypoints.md)

## Source

```typescript
import { FAILURE_EXIT, FLAG_NAMES } from "#configuration/constants/invocation.constants";
import { blockingGaps, coverageRow, renderCoverage } from "#core/formatters/coverage.formatter";
import { hasFlag, resolveArgv } from "@govlab/argv";
import { COVERAGE_ARGV } from "#configuration/configs/invocation.config";
import { discoverModules } from "#core/loaders/manifest.loader";
import { print } from "#core/reporters/base.reporter";
import process from "node:process";

const argv = resolveArgv(COVERAGE_ARGV);
const rows = discoverModules().map(coverageRow);

for (const line of renderCoverage(rows)) {
    print(line);
}

process.exitCode = hasFlag(argv, FLAG_NAMES.strict) && blockingGaps(rows) > 0 ? FAILURE_EXIT : 0;
```
