Module: pattern-support¶
pattern-support integrates pattern-value into core as an optional feature module. It contributes:
- a schema value provider id
"pattern"(used byExampleValueSettings.providers) - an additional schema validation rule for pattern violations
- a settings extractor that reads
patternGenerationconfig intoPatternGenerationOptions
Depends on¶
corepattern-value
Used by¶
distribution-bundle(enabled by default viaDistributionDefaults)
Key types¶
PatternSupportModule:TestGenerationModuleimplementationPatternModuleSettingsExtractor: extractspatternGenerationsettings from config/overridesPatternGenerationOptions: options object passed into the module
Settings¶
patternGeneration is a module setting (not a field on TestGenerationSettings). It is provided as a raw map under testGenerationSettings.patternGeneration and extracted before core settings parsing.
See: YAML config.
API reference¶
- Local Dokka output:
docs/api/openapi.testgen.pattern-support/index.html
Related docs¶
- Concepts: Architecture
- Modules: pattern-value
Pattern-Support Module¶
This document is non-normative and targets contributors. For core entry points, see the core module. For user-facing configuration, see YAML config.
Scope and responsibilities¶
pattern-support integrates regex-based pattern generation into core by:
- Contributing a schema example provider id
pattern. - Contributing a negative schema rule
InvalidPatternSchemaValidationRule. - Parsing module settings from
testGenerationSettings.patternGeneration.
It depends on core and pattern-value.
Configuration¶
Module settings key: patternGeneration.
Supported fields:
defaultMinLengthspaceCharsanyPrintableChars
Example YAML:
testGenerationSettings:
patternGeneration:
defaultMinLength: 3
spaceChars: " \t\n\r"
anyPrintableChars: "abcdefghijklmnopqrstuvwxyz"
Provider and rule wiring¶
PatternSupportModule contributes:
SchemaValueProvideridpattern(valid pattern matches).InvalidPatternSchemaValidationRule(non-matching pattern values).
To use the provider, include pattern in ExampleValueSettings.providers or rely on a
distribution that inserts it into the default provider order.
Related docs¶
- Pattern-value module: pattern-value
- Example-value module: example-value
- Rules catalog: rules