# test.scripts/configuration/strings/closure.strings.test.ts

> 17 lines of code and 0 definitions.

Tree: Codebase Testing
Language: typescript
Canonical: https://banes-lab.com/anatomy/testing#file-testing-test-scripts-configuration-strings-closure-strings-test-ts
Source text: https://banes-lab.com/source/testing/test.scripts/configuration/strings/closure.strings.test.ts.txt

Listed in [test.scripts/configuration/strings](https://banes-lab.com/api/source/testing/test.scripts/configuration/strings.md), before [test.scripts/configuration/strings/route.strings.test.ts](https://banes-lab.com/source/testing/test.scripts/configuration/strings/route.strings.test.ts.md).

## Contained in

- [test.scripts/configuration/strings](https://banes-lab.com/anatomy/testing/folder-testing-test-scripts-configuration-strings.md)

## Source

```typescript
import { describe, expect, it } from "vitest";
import {
    graphLine,
    unmatchedBarrels,
    unmatchedPattern,
} from "@project/scripts/configuration/strings/closure.strings.ts";

describe("the closure graph's lines", () => {
    it("names each barrel whose pattern matches nothing, under a heading that counts them", () => {
        const line = unmatchedPattern("core/index.ts", "./*.missing.ts");
        const report = unmatchedBarrels([line]);
        expect(report).toContain("1 import.meta.glob pattern(s) match no files");
        expect(report).toContain(`  ${line}`);
    });

    it("lists every count with its label", () => {
        expect(graphLine({ exports: 3, registers: 1 })).toBe("closure-graph: 3 exports, 1 registers\n");
    });
});
```
