spec/fixtures/classification/catalogs.md
RawRendered preview
Classification catalogs
Fixture: fixture-classification-catalogs@1
Given
The generated specification projection contains classification catalogs.
When
The fixture inspects source basenames, source suffixes, and default document roots.
Required invariants
INV-CLASSIFICATION-BASENAMES: Every canonical source basename is generated.
INV-CLASSIFICATION-SUFFIXES: Every canonical source suffix is generated.
INV-CLASSIFICATION-DOCUMENT-ROOTS: Every canonical default document root is generated.
Forbidden effects
NO-CLASSIFICATION-DUPLICATES: No generated classification catalog contains duplicate values.
Instrumentation
try fixture.given_generated_classification_catalogs();
try fixture.when_inspect_classification_catalogs();
try fixture.then_inv_classification_basenames();
try fixture.then_inv_classification_suffixes();
try fixture.then_inv_classification_document_roots();
try fixture.forbid_no_classification_duplicates();
Variations
Invalid values, duplicate values, and stale requirement references are covered by product-registry unit validation.
Limitations
This fixture verifies generated catalog data. It does not prove scanner classification behavior or filesystem traversal.
# Classification catalogs
**Fixture:** `fixture-classification-catalogs@1`
## Given
The generated specification projection contains classification catalogs.
## When
The fixture inspects source basenames, source suffixes, and default document roots.
## Required invariants
- **`INV-CLASSIFICATION-BASENAMES`:** Every canonical source basename is generated.
- **`INV-CLASSIFICATION-SUFFIXES`:** Every canonical source suffix is generated.
- **`INV-CLASSIFICATION-DOCUMENT-ROOTS`:** Every canonical default document root is generated.
## Forbidden effects
- **`NO-CLASSIFICATION-DUPLICATES`:** No generated classification catalog contains duplicate values.
## Instrumentation
```zig tj-test
try fixture.given_generated_classification_catalogs();
try fixture.when_inspect_classification_catalogs();
try fixture.then_inv_classification_basenames();
try fixture.then_inv_classification_suffixes();
try fixture.then_inv_classification_document_roots();
try fixture.forbid_no_classification_duplicates();
```
## Variations
Invalid values, duplicate values, and stale requirement references are covered by product-registry unit validation.
## Limitations
This fixture verifies generated catalog data. It does not prove scanner classification behavior or filesystem traversal.