CtrlK
CommunityDocumentationLog inGet started
Tessl Logo

tessl/pypi-vedro

Pragmatic Testing Framework for Python with BDD-style syntax and pluggable architecture

49%

Overall

Evaluation49%

1.09x

Agent success when using this tile

Overview
Eval results
Files

task.mdevals/scenario-7/

Config-Aware Scenario Runner

Build a helper module and demo project that exercise the testing framework's CLI runner, relying on the project's config file and plugin registry to control behavior. The helper should run the suite via the CLI, toggle a custom audit plugin, and report plugin registry state.

Capabilities

Uses project config for runs

  • Running from outside the project but pointing at project_dir runs scenarios using that directory's config file and applies its reporter/output settings. @test
  • If the config changes the set of scenario paths (for example, toggling a subfolder include), rerunning with the same CLI invocation reflects the updated selection. @test

Audit plugin toggle

  • A custom audit plugin registered in the config writes per-scenario results to audit.log when enabled and writes nothing when disabled through the plugin management CLI. @test

Plugin registry listing

  • Listing available plugins through the CLI shows the audit plugin with accurate enabled/disabled status after toggling. @test

Implementation

@generates

API

from pathlib import Path
from subprocess import CompletedProcess
from typing import Iterable

def run_suite(project_dir: Path, extra_args: Iterable[str] | None = None) -> CompletedProcess[str]:
    """Run the scenario suite via the framework CLI using the config located in project_dir."""

def enable_audit_plugin(project_dir: Path) -> CompletedProcess[str]:
    """Enable the audit plugin via the plugin management CLI."""

def disable_audit_plugin(project_dir: Path) -> CompletedProcess[str]:
    """Disable the audit plugin via the plugin management CLI."""

def list_plugins(project_dir: Path) -> str:
    """List plugins for the project and return the CLI output showing their states."""

Dependencies { .dependencies }

vedro { .dependency }

Scenario runner CLI with config loading and plugin registry management. @satisfied-by

tessl i tessl/pypi-vedro@1.14.0

tile.json