35 lines
		
	
	
		
			713 B
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			713 B
		
	
	
	
		
			Go
		
	
	
	
package testfixtures
 | 
						|
 | 
						|
import (
 | 
						|
	"errors"
 | 
						|
	"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",
 | 
						|
}
 | 
						|
 | 
						|
// ErrCouldNotConvertToTime is returns when a string is not a reconizable time format
 | 
						|
var ErrCouldNotConvertToTime = errors.New("Could not convert string to time")
 | 
						|
 | 
						|
func tryStrToDate(s string) (time.Time, error) {
 | 
						|
	for _, f := range timeFormats {
 | 
						|
		t, err := time.ParseInLocation(f, s, time.Local)
 | 
						|
		if err != nil {
 | 
						|
			continue
 | 
						|
		}
 | 
						|
		return t, nil
 | 
						|
	}
 | 
						|
	return time.Time{}, ErrCouldNotConvertToTime
 | 
						|
}
 |