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

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 boilerplate"
  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 boilerplate --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 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:

@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