github.com/supragya/TendermintConnector@v0.0.0-20210619045051-113e32b84fb1/_deprecated_chains/cosmos/libs/common/date_test.go (about) 1 package common 2 3 import ( 4 "testing" 5 "time" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 var ( 11 date = time.Date(2015, time.Month(12), 31, 0, 0, 0, 0, time.UTC) 12 date2 = time.Date(2016, time.Month(12), 31, 0, 0, 0, 0, time.UTC) 13 zero time.Time 14 ) 15 16 func TestParseDateRange(t *testing.T) { 17 assert := assert.New(t) 18 19 var testDates = []struct { 20 dateStr string 21 start time.Time 22 end time.Time 23 errNil bool 24 }{ 25 {"2015-12-31:2016-12-31", date, date2, true}, 26 {"2015-12-31:", date, zero, true}, 27 {":2016-12-31", zero, date2, true}, 28 {"2016-12-31", zero, zero, false}, 29 {"2016-31-12:", zero, zero, false}, 30 {":2016-31-12", zero, zero, false}, 31 } 32 33 for _, test := range testDates { 34 start, end, err := ParseDateRange(test.dateStr) 35 if test.errNil { 36 assert.Nil(err) 37 testPtr := func(want, have time.Time) { 38 assert.True(have.Equal(want)) 39 } 40 testPtr(test.start, start) 41 testPtr(test.end, end) 42 } else { 43 assert.NotNil(err) 44 } 45 } 46 }