Runner
provide.testkit.quality.runner
¶
Quality runner for orchestrating multiple quality tools.
Classes¶
QualityGateResults
dataclass
¶
QualityGateResults(
passed: bool,
results: dict[str, QualityResult],
failed_gates: list[str] = None,
)
Results from running quality gates.
QualityRunner
¶
QualityRunner(
artifact_root: Path | None = None,
tools: list[str] | None = None,
config: dict[str, Any] | None = None,
)
Orchestrates multiple quality analysis tools.
Manages the execution of quality tools, artifact collection, and result aggregation with configurable quality gates.
Initialize the quality runner.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
artifact_root
|
Path | None
|
Root directory for storing artifacts (defaults to .quality-artifacts) |
None
|
tools
|
list[str] | None
|
List of tool names to run (None for default set) |
None
|
config
|
dict[str, Any] | None
|
Configuration for tools and runner |
None
|
Source code in provide/testkit/quality/runner.py
Functions¶
generate_summary_report
¶
Generate a summary report of all results.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
results
|
dict[str, QualityResult]
|
Results to summarize |
required |
Returns:
| Type | Description |
|---|---|
str
|
Summary report string |
Source code in provide/testkit/quality/runner.py
get_available_tools
¶
run_all
¶
Run all configured quality tools on the target.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
target
|
Path
|
Path to analyze |
required |
**kwargs
|
Any
|
Additional arguments passed to tools |
{}
|
Returns:
| Type | Description |
|---|---|
dict[str, QualityResult]
|
Dictionary mapping tool names to their results |
Source code in provide/testkit/quality/runner.py
run_tools
¶
run_tools(
target: Path,
tools: list[str] | None = None,
artifact_dir: Path | None = None,
tool_configs: dict[str, Any] | None = None,
) -> dict[str, QualityResult]
Run specific quality tools on the target.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
target
|
Path
|
Path to analyze |
required |
tools
|
list[str] | None
|
List of tool names to run (None for all available) |
None
|
artifact_dir
|
Path | None
|
Directory for artifacts (overrides default) |
None
|
tool_configs
|
dict[str, Any] | None
|
Configuration for tools |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, QualityResult]
|
Dictionary mapping tool names to their results |
Source code in provide/testkit/quality/runner.py
run_with_gates
¶
run_with_gates(
target: Path, gates: dict[str, Any], **kwargs: Any
) -> tuple[bool, dict[str, QualityResult]]
Run quality tools and check against quality gates.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
target
|
Path
|
Path to analyze |
required |
gates
|
dict[str, Any]
|
Quality gate requirements |
required |
**kwargs
|
Any
|
Additional arguments passed to tools |
{}
|
Returns:
| Type | Description |
|---|---|
tuple[bool, dict[str, QualityResult]]
|
Tuple of (all_gates_passed, results) |