ClaudeFlow ported, needs cleanup
This commit is contained in:
+82
-25
@@ -1,39 +1,96 @@
|
||||
Feature: Command-line greeting interface
|
||||
As a user of the CleverClaude CLI
|
||||
I want to be greeted properly
|
||||
So that I can verify the application works
|
||||
Feature: CleverClaude Command-line Interface
|
||||
As a user of CleverClaude
|
||||
I want to interact with the AI agent orchestration system via CLI
|
||||
So that I can manage agents, swarms, and tasks efficiently
|
||||
|
||||
Background:
|
||||
Given the CLI is available
|
||||
Given the CleverClaude CLI is available
|
||||
And I have a test environment
|
||||
|
||||
Scenario: Default greeting
|
||||
When I run "python -m cleverclaude"
|
||||
@smoke
|
||||
Scenario: Display version information
|
||||
When I run "cleverclaude --version"
|
||||
Then the exit code should be 0
|
||||
And the output should contain "Hello, World!"
|
||||
And the output should contain "CleverClaude Python v"
|
||||
|
||||
Scenario: Custom name greeting
|
||||
When I run "python -m cleverclaude --name Alice"
|
||||
@smoke
|
||||
Scenario: Display help information
|
||||
When I run "cleverclaude --help"
|
||||
Then the exit code should be 0
|
||||
And the output should contain "Hello, Alice!"
|
||||
And the output should contain "Advanced AI Agent Orchestration System"
|
||||
And the output should contain "init"
|
||||
And the output should contain "start"
|
||||
And the output should contain "agent"
|
||||
And the output should contain "swarm"
|
||||
|
||||
Scenario: Multiple greetings
|
||||
When I run "python -m cleverclaude --count 3"
|
||||
Scenario: Initialize project with default template
|
||||
Given I have an empty directory
|
||||
When I run "cleverclaude init"
|
||||
Then the exit code should be 0
|
||||
And the output should contain "Hello, World!" 3 times
|
||||
And the output should contain "CleverClaude project initialized successfully"
|
||||
And the directory ".cleverclaude" should exist
|
||||
And the file ".cleverclaude/config.yaml" should exist
|
||||
And the file ".env.example" should exist
|
||||
And the directory "examples" should exist
|
||||
|
||||
Scenario Outline: Greeting various names
|
||||
When I run "python -m cleverclaude --name <name>"
|
||||
Scenario: Initialize project with custom directory
|
||||
Given I have a target directory "test-project"
|
||||
When I run "cleverclaude init --dir test-project"
|
||||
Then the exit code should be 0
|
||||
And the output should contain "Hello, <name>!"
|
||||
And the output should contain "CleverClaude project initialized successfully"
|
||||
And the directory "test-project/.cleverclaude" should exist
|
||||
|
||||
Scenario: Initialize project with production template
|
||||
Given I have an empty directory
|
||||
When I run "cleverclaude init --template production"
|
||||
Then the exit code should be 0
|
||||
And the file "docker-compose.yml" should exist
|
||||
And the file ".cleverclaude/config.yaml" should contain "environment: \"production\""
|
||||
|
||||
Scenario: Fail to initialize in non-empty directory without force
|
||||
Given I have a directory with existing files
|
||||
When I run "cleverclaude init"
|
||||
Then the exit code should be 1
|
||||
And the output should contain "Use --force to overwrite"
|
||||
|
||||
Scenario: Force initialize in non-empty directory
|
||||
Given I have a directory with existing files
|
||||
When I run "cleverclaude init --force"
|
||||
Then the exit code should be 0
|
||||
And the output should contain "CleverClaude project initialized successfully"
|
||||
|
||||
@wip
|
||||
Scenario: Start CleverClaude orchestration system
|
||||
Given I have an initialized CleverClaude project
|
||||
When I start the orchestration system in test mode
|
||||
Then the system should initialize successfully
|
||||
And the agent manager should be running
|
||||
And the API server should be accessible
|
||||
|
||||
@wip
|
||||
Scenario: Display system status
|
||||
Given CleverClaude is running
|
||||
When I run "cleverclaude status"
|
||||
Then the exit code should be 0
|
||||
And the output should contain system health information
|
||||
And the output should contain agent count
|
||||
And the output should contain memory usage
|
||||
|
||||
Scenario Outline: CLI command help
|
||||
When I run "cleverclaude <command> --help"
|
||||
Then the exit code should be 0
|
||||
And the output should contain command-specific help
|
||||
|
||||
Examples:
|
||||
| name |
|
||||
| Bob |
|
||||
| Charlie |
|
||||
| 世界 |
|
||||
| 🎉 |
|
||||
| command |
|
||||
| init |
|
||||
| start |
|
||||
| status |
|
||||
| config |
|
||||
| monitor |
|
||||
|
||||
@hypothesis
|
||||
Scenario: Fuzz test greeting names
|
||||
When I fuzz test the CLI with random names
|
||||
Then all invocations should succeed
|
||||
Scenario: Fuzz test CLI with invalid arguments
|
||||
When I fuzz test the CLI with random invalid arguments
|
||||
Then all invocations should either succeed or fail gracefully
|
||||
And no invocation should crash the system
|
||||
Reference in New Issue
Block a user