# test.rules/shared/analyzers/document.analyzer.test.ts

> 9 lines of code and 0 definitions.

Tree: Codebase Testing
Language: typescript
Canonical: https://banes-lab.com/anatomy/testing#file-testing-test-rules-shared-analyzers-document-analyzer-test-ts
Source text: https://banes-lab.com/source/testing/test.rules/shared/analyzers/document.analyzer.test.ts.txt

Listed in [test.rules/shared/analyzers](https://banes-lab.com/api/source/testing/test.rules/shared/analyzers.md), after [test.rules/shared/analyzers/composition.analyzer.test.ts](https://banes-lab.com/source/testing/test.rules/shared/analyzers/composition.analyzer.test.ts.md) and before [test.rules/shared/analyzers/generator.analyzer.test.ts](https://banes-lab.com/source/testing/test.rules/shared/analyzers/generator.analyzer.test.ts.md).

## Contained in

- [test.rules/shared/analyzers](https://banes-lab.com/anatomy/testing/folder-testing-test-rules-shared-analyzers.md)

## Source

```typescript
import { describe, expect, it } from "vitest";
import { documentFindingsOf } from "@ssot/govlab/shared/analyzers/document.analyzer.ts";

describe("documentFindingsOf", () => {
    it("finds nothing in a plain sentence and names the check a semicolon breaks", () => {
        expect(documentFindingsOf("The gate runs once per state.")).toStrictEqual([]);
        const findings = documentFindingsOf("The gate runs once; the report follows.");
        expect(findings.map((finding) => finding.check)).toContain("no-semicolon");
    });
});
```
