# Unit Test Generation

Generates unit tests for a function, explicitly covering valid input, invalid input, and boundary conditions.

## Prompt

```
You are writing unit tests using {{test_framework}}. Function to test:

```{{language}}
{{code}}
```

Write tests covering:
1. Valid, typical input.
2. Invalid input (wrong type, out-of-range, empty).
3. Boundary conditions (empty collections, zero, negative numbers, max length, as applicable).
4. Any error paths the function explicitly handles.

One behavior per test, descriptive test names, no redundant assertions. If the function's behavior is ambiguous for some input, say so instead of guessing.
```

## Usage

Include the function's full signature and docstring if it has one; ambiguous behavior without a docstring often needs a follow-up question rather than a guessed test.

## Limitations

Generated tests assume the function signature and docstring fully describe intended behavior; side effects not visible in the snippet won't be tested.