1.1 KiB
1.1 KiB
Behaviour Specifications
All features are documented as Gherkin scenarios that serve as both tests and documentation.
CLI Features
Default Greeting
Scenario: Default greeting
When I run "python -m cleverclaude"
Then the exit code should be 0
And the output should contain "Hello, World!"
Custom Name Greeting
Scenario: Custom name greeting
When I run "python -m cleverclaude --name Alice"
Then the exit code should be 0
And the output should contain "Hello, Alice!"
Multiple Greetings
Scenario: Multiple greetings
When I run "python -m cleverclaude --count 3"
Then the exit code should be 0
And the output should contain "Hello, World!" 3 times
Fuzz Testing
We use Hypothesis to ensure our CLI handles edge cases:
@hypothesis
Scenario: Fuzz test greeting names
When I fuzz test the CLI with random names
Then all invocations should succeed
This runs 1000+ test cases with randomly generated inputs including:
- Empty strings
- Unicode characters
- Emojis
- Very long strings
- Special characters