Struct validation backed by go-playground/validator/v10 with xerrors integration and pluggable i18n message providers. What's included: - Validator interface with Struct(v any) error method - New(...Option) constructor with WithMessageProvider functional option - MessageProvider interface for i18n; DefaultMessages (EN) and SpanishMessages (ES) built in - ValidationErrors mapped to xerrors.ErrInvalidInput with field and tag context keys - InvalidValidationError (non-struct input) mapped to xerrors.ErrInternal - Full playground.ValidationErrors attached via WithError for callers needing all failures Tested-via: todo-api POC integration Reviewed-against: docs/adr/
11 lines
306 B
Go
11 lines
306 B
Go
package valid_test
|
|
|
|
import "code.nochebuena.dev/go/valid"
|
|
|
|
// Verify New returns a Validator.
|
|
var _ valid.Validator = valid.New()
|
|
|
|
// Verify DefaultMessages and SpanishMessages satisfy MessageProvider.
|
|
var _ valid.MessageProvider = valid.DefaultMessages
|
|
var _ valid.MessageProvider = valid.SpanishMessages
|