Files
cleverclaude-core/docs/behaviour.md
T
2025-08-01 18:38:09 -04:00

50 lines
1.1 KiB
Markdown

# Behaviour Specifications
All features are documented as Gherkin scenarios that serve as both tests and documentation.
## CLI Features
### Default Greeting
```gherkin
Scenario: Default greeting
When I run "python -m boilerplate"
Then the exit code should be 0
And the output should contain "Hello, World!"
```
### Custom Name Greeting
```gherkin
Scenario: Custom name greeting
When I run "python -m boilerplate --name Alice"
Then the exit code should be 0
And the output should contain "Hello, Alice!"
```
### Multiple Greetings
```gherkin
Scenario: Multiple greetings
When I run "python -m boilerplate --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:
```gherkin
@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