MCPcopy
hub / github.com/go-sql-driver/mysql / TestParseDateTimeFail

Function TestParseDateTimeFail

utils_test.go:488–555  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

486}
487
488func TestParseDateTimeFail(t *testing.T) {
489 cases := []struct {
490 name string
491 str string
492 wantErr string
493 }{
494 {
495 name: "parse invalid time",
496 str: "hello",
497 wantErr: "invalid time bytes: hello",
498 },
499 {
500 name: "parse year",
501 str: "000!-00-00 00:00:00.000000",
502 wantErr: "not [0-9]",
503 },
504 {
505 name: "parse month",
506 str: "0000-!0-00 00:00:00.000000",
507 wantErr: "not [0-9]",
508 },
509 {
510 name: `parse "-" after parsed year`,
511 str: "0000:00-00 00:00:00.000000",
512 wantErr: "bad value for field: `:`",
513 },
514 {
515 name: `parse "-" after parsed month`,
516 str: "0000-00:00 00:00:00.000000",
517 wantErr: "bad value for field: `:`",
518 },
519 {
520 name: `parse " " after parsed date`,
521 str: "0000-00-00+00:00:00.000000",
522 wantErr: "bad value for field: `+`",
523 },
524 {
525 name: `parse ":" after parsed date`,
526 str: "0000-00-00 00-00:00.000000",
527 wantErr: "bad value for field: `-`",
528 },
529 {
530 name: `parse ":" after parsed hour`,
531 str: "0000-00-00 00:00-00.000000",
532 wantErr: "bad value for field: `-`",
533 },
534 {
535 name: `parse "." after parsed sec`,
536 str: "0000-00-00 00:00:00?000000",
537 wantErr: "bad value for field: `?`",
538 },
539 }
540
541 for _, cc := range cases {
542 t.Run(cc.name, func(t *testing.T) {
543 got, err := parseDateTime([]byte(cc.str), time.UTC)
544 if err == nil {
545 t.Fatal("want error")

Callers

nothing calls this directly

Calls 2

parseDateTimeFunction · 0.85
ErrorMethod · 0.45

Tested by

no test coverage detected