mirror of https://github.com/go-gitea/gitea
Git with a cup of tea, painless self-hosted git service
Mirror for internal git.with.parts use
https://git.with.parts
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
856 B
44 lines
856 B
4 years ago
|
package testfixtures
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"time"
|
||
|
)
|
||
|
|
||
|
var timeFormats = [...]string{
|
||
|
"2006-01-02",
|
||
|
"2006-01-02 15:04",
|
||
|
"2006-01-02 15:04:05",
|
||
|
"20060102",
|
||
|
"20060102 15:04",
|
||
|
"20060102 15:04:05",
|
||
|
"02/01/2006",
|
||
|
"02/01/2006 15:04",
|
||
|
"02/01/2006 15:04:05",
|
||
|
"2006-01-02T15:04-07:00",
|
||
|
"2006-01-02T15:04:05-07:00",
|
||
|
"2006-01-02T15:04:05Z07:00",
|
||
|
"2006-01-02 15:04:05Z07:00",
|
||
|
"2006-01-02T15:04:05Z0700",
|
||
|
"2006-01-02 15:04:05Z0700",
|
||
|
"2006-01-02T15:04:05Z07",
|
||
|
"2006-01-02 15:04:05Z07",
|
||
|
"2006-01-02 15:04:05 MST",
|
||
|
}
|
||
|
|
||
|
func (l *Loader) tryStrToDate(s string) (time.Time, error) {
|
||
|
loc := l.location
|
||
|
if loc == nil {
|
||
|
loc = time.Local
|
||
|
}
|
||
|
|
||
|
for _, f := range timeFormats {
|
||
|
t, err := time.ParseInLocation(f, s, loc)
|
||
|
if err != nil {
|
||
|
continue
|
||
|
}
|
||
|
return t, nil
|
||
|
}
|
||
|
return time.Time{}, fmt.Errorf(`testfixtures: could not convert string "%s" to time`, s)
|
||
|
}
|