Files
card-to-iban/backend/internal/card/validation.go

28 lines
489 B
Go

package card
import "errors"
var (
ErrCardRequired = errors.New("card number is required")
ErrCardLength = errors.New("card number must contain exactly 16 digits")
ErrCardNumeric = errors.New("card number must contain only digits")
)
func Validate(number string) error {
if number == "" {
return ErrCardRequired
}
if len(number) != 16 {
return ErrCardLength
}
for _, char := range number {
if char < '0' || char > '9' {
return ErrCardNumeric
}
}
return nil
}