uuid_test.go 772 B

123456789101112131415161718192021222324252627282930313233
  1. package validate
  2. import (
  3. "errors"
  4. "testing"
  5. )
  6. func TestUUID(t *testing.T) {
  7. type TestCase struct {
  8. Input string
  9. Err error
  10. }
  11. testCases := []TestCase{
  12. {Input: "00000000-0000-0000-0000-000000000000"},
  13. {Input: "01234567-89ab-cdef-0123-456789abcdef"},
  14. {Input: "abcdef01-2345-6789-abcd-ef0123456789"},
  15. {Input: "Not a UUID", Err: ErrInvalidUUID},
  16. {Input: "00000000-00-0000-0000-00000000000000", Err: ErrInvalidUUID},
  17. {Input: "00000000000000000000000000000000", Err: ErrInvalidUUID},
  18. {Input: "01234567-89ab-cdef-ghij-klmnopqrstuv", Err: ErrInvalidUUID},
  19. }
  20. for n, tc := range testCases {
  21. t.Logf("(%d) Testing %q", n, tc.Input)
  22. err := UUID(tc.Input)
  23. if !errors.Is(err, tc.Err) {
  24. t.Errorf("Expected error %v, got %v", tc.Err, err)
  25. }
  26. }
  27. }