2 Star 0 Fork 70

golang-package/carbon

forked from dromara/carbon 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
boundary_unit_test.go 18.40 KB
一键复制 编辑 原始数据 按行查看 历史
kuafuRace 提交于 2个月前 . test: Unify unit test format
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697
package carbon
import (
"testing"
"github.com/stretchr/testify/suite"
)
type BoundarySuite struct {
suite.Suite
}
func TestBoundarySuite(t *testing.T) {
suite.Run(t, new(BoundarySuite))
}
func (s *BoundarySuite) TestCarbon_StartOfCentury() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfCentury()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfCentury()
s.False(c.HasError())
s.Equal("0000-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfCentury()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfCentury()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2000-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfCentury().ToString())
s.Equal("2000-01-01 00:00:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfCentury().ToString())
s.Equal("2000-01-01 00:00:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfCentury().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfCentury() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfCentury()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfCentury()
s.False(c.HasError())
s.Equal("0099-12-31 23:59:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfCentury()
s.False(c.HasError())
s.Empty(c.String())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfCentury()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2099-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfCentury().ToString())
s.Equal("2099-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfCentury().ToString())
s.Equal("2099-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfCentury().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfDecade() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfDecade()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfDecade()
s.False(c.HasError())
s.Equal("0000-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfDecade()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfDecade()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfDecade().ToString())
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfDecade().ToString())
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfDecade().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfDecade() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfDecade()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfDecade()
s.False(c.HasError())
s.Equal("0009-12-31 23:59:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfDecade()
s.False(c.HasError())
s.Empty(c.String())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfDecade()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2029-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfDecade().ToString())
s.Equal("2029-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfDecade().ToString())
s.Equal("2029-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfDecade().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfYear() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfYear()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfYear()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfYear()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfYear()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfYear().ToString())
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfYear().ToString())
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfYear().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfYear() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfYear()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfYear()
s.False(c.HasError())
s.Equal("0001-12-31 23:59:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfYear()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfYear()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfYear().ToString())
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfYear().ToString())
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfYear().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfQuarter() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfQuarter()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfQuarter()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfQuarter()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfQuarter()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfQuarter().ToString())
s.Equal("2020-07-01 00:00:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfQuarter().ToString())
s.Equal("2020-10-01 00:00:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfQuarter().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfQuarter() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfQuarter()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfQuarter()
s.False(c.HasError())
s.Equal("0001-03-31 23:59:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfQuarter()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfQuarter()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-03-31 23:59:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfQuarter().ToString())
s.Equal("2020-09-30 23:59:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfQuarter().ToString())
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfQuarter().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfMonth() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfMonth()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfMonth()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfMonth()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfMonth()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfMonth().ToString())
s.Equal("2020-08-01 00:00:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfMonth().ToString())
s.Equal("2020-12-01 00:00:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfMonth().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfMonth() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfMonth()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfMonth()
s.False(c.HasError())
s.Equal("0001-01-31 23:59:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfMonth()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfMonth()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-31 23:59:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfMonth().ToString())
s.Equal("2020-08-31 23:59:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfMonth().ToString())
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfMonth().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfWeek() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfWeek()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfWeek()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfWeek()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfWeek()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2019-12-30 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfWeek().ToString())
s.Equal("2020-08-10 00:00:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfWeek().ToString())
s.Equal("2020-12-28 00:00:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfWeek().ToString())
s.Equal("2025-04-07 00:00:00 +0000 UTC", Parse("2025-04-07 00:00:00").StartOfWeek().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfWeek() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfWeek()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfWeek()
s.False(c.HasError())
s.Equal("0001-01-07 23:59:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfWeek()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfWeek()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-05 23:59:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfWeek().ToString())
s.Equal("2020-08-16 23:59:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfWeek().ToString())
s.Equal("2021-01-03 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfWeek().ToString())
s.Equal("2025-04-13 23:59:59.999999999 +0000 UTC", Parse("2025-04-13 00:00:00").EndOfWeek().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfDay() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfDay()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfDay()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfDay()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfDay()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfDay().ToString())
s.Equal("2020-08-15 00:00:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfDay().ToString())
s.Equal("2020-12-31 00:00:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfDay().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfDay() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfDay()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfDay()
s.False(c.HasError())
s.Equal("0001-01-01 23:59:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfDay()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfDay()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 23:59:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfDay().ToString())
s.Equal("2020-08-15 23:59:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfDay().ToString())
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfDay().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfHour() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfHour()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfHour()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfHour()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfHour()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfHour().ToString())
s.Equal("2020-08-15 12:00:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfHour().ToString())
s.Equal("2020-12-31 23:00:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfHour().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfHour() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfHour()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfHour()
s.False(c.HasError())
s.Equal("0001-01-01 00:59:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfHour()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfHour()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:59:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfHour().ToString())
s.Equal("2020-08-15 12:59:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfHour().ToString())
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfHour().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfMinute() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfMinute()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfMinute()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfMinute()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfMinute()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfMinute().ToString())
s.Equal("2020-08-15 12:30:00 +0000 UTC", Parse("2020-08-15 12:30:30").StartOfMinute().ToString())
s.Equal("2020-12-31 23:59:00 +0000 UTC", Parse("2020-12-31 23:59:59").StartOfMinute().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfMinute() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfMinute()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfMinute()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:59.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfMinute()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfMinute()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:59.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfMinute().ToString())
s.Equal("2020-08-15 12:30:59.999999999 +0000 UTC", Parse("2020-08-15 12:30:30").EndOfMinute().ToString())
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59").EndOfMinute().ToString())
})
}
func (s *BoundarySuite) TestCarbon_StartOfSecond() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.StartOfSecond()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().StartOfSecond()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").StartOfSecond()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").StartOfSecond()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00 +0000 UTC", Parse("2020-01-01 00:00:00").StartOfSecond().ToString())
s.Equal("2020-08-15 12:30:30 +0000 UTC", Parse("2020-08-15 12:30:30.66666").StartOfSecond().ToString())
s.Equal("2020-12-31 23:59:59 +0000 UTC", Parse("2020-12-31 23:59:59.999999999").StartOfSecond().ToString())
})
}
func (s *BoundarySuite) TestCarbon_EndOfSecond() {
s.Run("nil carbon", func() {
var c *Carbon
c = nil
c = c.EndOfSecond()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("zero carbon", func() {
c := NewCarbon().EndOfSecond()
s.False(c.HasError())
s.Equal("0001-01-01 00:00:00.999999999 +0000 UTC", c.ToString())
})
s.Run("empty carbon", func() {
c := Parse("").EndOfSecond()
s.False(c.HasError())
s.Empty(c.ToString())
})
s.Run("error carbon", func() {
c := Parse("xxx").EndOfSecond()
s.True(c.HasError())
s.Empty(c.ToString())
})
s.Run("valid carbon", func() {
s.Equal("2020-01-01 00:00:00.999999999 +0000 UTC", Parse("2020-01-01 00:00:00").EndOfSecond().ToString())
s.Equal("2020-08-15 12:30:30.999999999 +0000 UTC", Parse("2020-08-15 12:30:30.66666").EndOfSecond().ToString())
s.Equal("2020-12-31 23:59:59.999999999 +0000 UTC", Parse("2020-12-31 23:59:59.999999999").EndOfSecond().ToString())
})
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/golang-package/carbon.git
git@gitee.com:golang-package/carbon.git
golang-package
carbon
carbon
master

搜索帮助