Core Filtering (Ignore Configuration)¶
This document is non-normative and targets contributors. For core flow, see the core module. For defaults and wiring in the CLI/Gradle distributions, see distribution settings. For user-facing configuration, see YAML config.
Overview¶
The filtering package applies ignore rules for paths, operations, and test cases. Filtering is
applied after a TestSuite is assembled.
Ignore config structure¶
The ignore configuration is provided via TestGenerationSettings.ignoreTestCases and validated by
IgnoreConfigValidator:
- Path key ->
"*": ignore the entire path. - Path key ->
Map<String, "*">: ignore a specific HTTP method. - Path key ->
Map<String, List<String>>: ignore specific test case names.
Examples:
// Ignore entire path
mapOf("/api/users" to "*")
// Ignore specific method
mapOf("/api/users" to mapOf("DELETE" to "*"))
// Ignore specific test cases
mapOf("/api/users" to mapOf("GET" to listOf("Invalid Query role parameter")))
// Wildcard path for all paths
mapOf("*" to mapOf("OPTIONS" to "*"))
Runtime behavior (IgnoreConfigHandler)¶
- Path keys are matched as-is; missing paths are logged as warnings.
- Method keys are uppercased; matching is case-insensitive.
- The wildcard path (
*) merges with path-specific rules; wildcard method entries override path-specific entries on key collisions. - The forbidden
*:*:*wildcard pattern is ignored with a warning. - Filtering happens after suite assembly; if all cases are filtered, the operation is recorded as "not tested".