| Basic Validation | | |
| Valid request | Request with all required fields meeting validation rules | Returns 200 OK |
| Missing required field | Request missing a field marked as required | Returns 400 Bad Request |
| Invalid email | Email field with invalid format (missing @ or .) | Returns 400 Bad Request |
| Min length violation | Field value shorter than minimum length requirement | Returns 400 Bad Request |
| Optional Fields | | |
| Without optional field | Request without an optional field present | Returns 200 OK |
| With valid optional field | Request with optional field that passes validation | Returns 200 OK |
| With invalid optional field | Request with optional field failing validation | Returns 400 Bad Request |
| Validation Rules | | |
| Required pass | Non-empty value for required field | Validation passes |
| Required fail | Empty value for required field | Validation fails |
| Min pass | Value length >= minimum | Validation passes |
| Min fail | Value length < minimum | Validation fails |
| Max pass | Value length maximum | Validation passes |
| Max fail | Value length > maximum | Validation fails |
| Email pass | Valid email format with @ and . | Validation passes |
| Email fail | Invalid email format | Validation fails |
| Numeric pass | Valid numeric value (e.g., β123.45β) | Validation passes |
| Numeric fail | Non-numeric value | Validation fails |
| Integer pass | Valid integer value (e.g., β123β) | Validation passes |
| Integer fail | Non-integer value (e.g., β12.3β) | Validation fails |
| Alpha pass | Letters only value | Validation passes |
| Alpha fail | Value with non-letter characters | Validation fails |
| Alphanum pass | Letters and numbers only | Validation passes |
| Alphanum fail | Value with special characters | Validation fails |
| In pass | Value matching one of allowed options | Validation passes |
| In fail | Value not in allowed options list | Validation fails |
| URL pass | Valid URL with http:// or https:// | Validation passes |
| URL fail | Invalid URL format | Validation fails |
| UUID pass | Valid UUID format (36 chars with hyphens at positions 8,13,18,23) | Validation passes |
| UUID fail | Invalid UUID format | Validation fails |
| Custom Error Handler | | |
| Custom error handler | Validation failure with custom error handler | Returns custom status code (422) with custom format |
| JSON Validation | | |
| Valid JSON | JSON body with valid fields | Returns 200 OK |
| Invalid JSON values | JSON body with fields failing validation | Returns 400 Bad Request |
| Malformed JSON | Unparseable JSON body | Returns 400 Bad Request |
| Error Formatting | | |
| Multiple validation errors | Multiple fields failing validation | Returns formatted error string with all failures |
| Empty validation errors | No validation errors | Returns βvalidation failedβ message |
| Field Helper Functions | | |
| Field creation | Creating required field rule | Returns Rule with correct field name and rules |
| OptionalField creation | Creating optional field rule | Returns Rule with Optional=true |