Files
cleveragents-core/features/action_cli.feature
T

85 lines
3.1 KiB
Gherkin

Feature: Action CLI commands
As a developer
I want to manage actions via CLI commands
So that I can create and use reusable plan templates
Background:
Given an action CLI runner with mocks
And a mocked plan lifecycle service
# Create command tests
Scenario: Create action with required parameters
When I run action CLI create with name "local/test-action" and required parameters
Then the action CLI create should succeed
And the action CLI created name should be "local/test-action"
Scenario: Create action with all parameters
When I run action CLI create with all parameters
Then the action CLI create should succeed
And the action CLI should have specified arguments
Scenario: Create action with --available flag
When I run action CLI create with the available flag
Then the action CLI should create in available state
Scenario: Create action with invalid argument format fails
When I run action CLI create with invalid argument format
Then the action CLI command should abort
# List command tests
Scenario: List actions shows all actions
Given there are mocked existing actions
When I run action CLI list
Then the action CLI should show all actions in a table
Scenario: List actions with namespace filter
Given there are mocked existing actions
When I run action CLI list with namespace filter "local"
Then the action CLI should show only local namespace actions
Scenario: List actions with available filter
Given there are mocked existing actions
When I run action CLI list with available filter
Then the action CLI should show only available actions
Scenario: List actions when empty
Given there are no mocked actions
When I run action CLI list
Then the action CLI should show no actions message
# Show command tests
Scenario: Show action by ID
Given there is a mocked action with ID "01ARZ3NDEKTSV4RRFFQ69G5FAV"
When I run action CLI show with that ID
Then the action CLI should show the action details
Scenario: Show action by name
Given there is a mocked action with name "local/my-action"
When I run action CLI show with name "local/my-action"
Then the action CLI should show the action details
Scenario: Show action not found
When I run action CLI show with unknown ID
Then the action CLI command should abort for missing action
# Available command tests
Scenario: Make action available
Given there is a mocked draft action
When I run action CLI available with the action ID
Then the action CLI should make action available
Scenario: Make already available action fails
Given there is a mocked available action
When I run action CLI available with the action ID
Then the action CLI command should abort with business rule violation
# Archive command tests
Scenario: Archive action
Given there is a mocked available action
When I run action CLI archive with the action ID
Then the action CLI should archive the action
Scenario: Archive action not found
When I run action CLI archive with unknown ID
Then the action CLI command should abort for missing action