655947c8ba
CI / push-validation (pull_request) Successful in 21s
CI / helm (pull_request) Successful in 29s
CI / lint (pull_request) Successful in 3m45s
CI / build (pull_request) Successful in 3m42s
CI / typecheck (pull_request) Successful in 4m24s
CI / quality (pull_request) Successful in 4m26s
CI / security (pull_request) Successful in 4m46s
CI / integration_tests (pull_request) Successful in 7m31s
CI / unit_tests (pull_request) Successful in 7m47s
CI / e2e_tests (pull_request) Successful in 7m39s
CI / docker (pull_request) Successful in 1m35s
CI / coverage (pull_request) Successful in 14m19s
CI / benchmark-regression (push) Waiting to run
CI / benchmark-publish (push) Waiting to run
CI / status-check (pull_request) Successful in 3s
CI / push-validation (push) Successful in 23s
CI / helm (push) Successful in 31s
CI / build (push) Successful in 3m48s
CI / lint (push) Successful in 3m54s
CI / quality (push) Successful in 4m21s
CI / typecheck (push) Successful in 4m29s
CI / security (push) Successful in 4m46s
CI / e2e_tests (push) Successful in 6m55s
CI / integration_tests (push) Successful in 7m18s
CI / unit_tests (push) Successful in 8m45s
CI / docker (push) Successful in 1m33s
CI / coverage (push) Successful in 15m12s
CI / status-check (push) Successful in 3s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Failing after 24m35s
The <REGEX> positional argument was already implemented in the CLI code
(src/cleveragents/cli/commands/plan.py) in a prior commit. This commit
adds the missing Robot Framework integration test that verifies the
argument is accepted and correctly filters plan names by regex pattern.
Changes:
- robot/helper_plan_cli_spec.py: Add list_regex() helper function that
creates two mock plans (local/smoke-plan and local/other-plan), invokes
'agents plan list --format json smoke.*', and verifies that only the
matching plan appears in the output.
- robot/plan_cli_spec.robot: Add 'Plan Lifecycle List Accepts Regex
Positional Argument' test case that calls the list-regex helper and
asserts the plan-cli-list-regex-ok sentinel is printed.
The Behave unit test scenario ('Plan list with regex filter') already
existed in features/plan_cli_spec_alignment.feature and the step
definition in features/steps/plan_cli_spec_alignment_steps.py.
Closes #3436
72 lines
3.6 KiB
Plaintext
72 lines
3.6 KiB
Plaintext
*** Settings ***
|
|
Documentation Smoke tests for Plan CLI spec alignment (use/list/status flags)
|
|
Resource ${CURDIR}/common.resource
|
|
Suite Setup Setup Test Environment
|
|
Suite Teardown Cleanup Test Environment
|
|
|
|
*** Variables ***
|
|
${HELPER} ${CURDIR}/helper_plan_cli_spec.py
|
|
|
|
*** Test Cases ***
|
|
Plan Use Accepts Positional Projects
|
|
[Documentation] Verify that ``plan use`` accepts multiple positional projects
|
|
${result}= Run Process ${PYTHON} ${HELPER} use-positional-projects cwd=${WORKSPACE}
|
|
Log ${result.stdout}
|
|
Log ${result.stderr}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-use-positional-ok
|
|
|
|
Plan Use Accepts Automation Profile Flag
|
|
[Documentation] Verify that ``plan use --automation-profile`` is accepted
|
|
${result}= Run Process ${PYTHON} ${HELPER} use-automation-profile cwd=${WORKSPACE}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-use-profile-ok
|
|
|
|
Plan Use Accepts Invariant Flag
|
|
[Documentation] Verify that ``plan use --invariant`` is accepted (repeatable)
|
|
${result}= Run Process ${PYTHON} ${HELPER} use-invariant cwd=${WORKSPACE}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-use-invariant-ok
|
|
|
|
Plan Use Accepts Actor Override Flags
|
|
[Documentation] Verify that plan use accepts actor override flags
|
|
${result}= Run Process ${PYTHON} ${HELPER} use-actor-overrides cwd=${WORKSPACE}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-use-actors-ok
|
|
|
|
Plan Lifecycle List Accepts Filter Flags
|
|
[Documentation] Verify that ``plan list`` accepts --phase, --state, --project, --action
|
|
${result}= Run Process ${PYTHON} ${HELPER} list-filters cwd=${WORKSPACE}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-list-filters-ok
|
|
|
|
Plan Lifecycle List Accepts Regex Positional Argument
|
|
[Documentation] Verify that ``plan list <REGEX>`` filters plans by name regex
|
|
${result}= Run Process ${PYTHON} ${HELPER} list-regex cwd=${WORKSPACE}
|
|
Log ${result.stdout}
|
|
Log ${result.stderr}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-list-regex-ok
|
|
|
|
Plan Status Renders Required Fields
|
|
[Documentation] Verify that ``plan status`` renders action_name, phase, state, projects, args, timestamps
|
|
${result}= Run Process ${PYTHON} ${HELPER} status-fields cwd=${WORKSPACE}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-status-fields-ok
|
|
|
|
Plan Cancel Accepts Reason Flag
|
|
[Documentation] Verify that ``plan cancel --reason`` is accepted
|
|
${result}= Run Process ${PYTHON} ${HELPER} cancel-reason cwd=${WORKSPACE}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-cancel-reason-ok
|
|
|
|
Plan List Rich Output Includes Required Columns
|
|
[Documentation] Verify that ``plan list`` rich output includes Name, Updated, and Invariants columns
|
|
[Tags] tdd_issue tdd_issue_4311 tdd_expected_fail
|
|
|
|
${result}= Run Process ${PYTHON} ${HELPER} list-columns cwd=${WORKSPACE}
|
|
Log ${result.stdout}
|
|
Log ${result.stderr}
|
|
Should Be Equal As Integers ${result.rc} 0
|
|
Should Contain ${result.stdout} plan-cli-list-columns-ok
|