From 2f8e7a2c6746550593a84b43accd879970b57ea1 Mon Sep 17 00:00:00 2001 From: Gusted Date: Tue, 5 Nov 2024 21:20:55 +0100 Subject: [PATCH] [CHORE] Add extra testing - Do more property testing for null values. - Add test for `AbsoluteLong`. --- modules/templates/util_date.go | 2 +- modules/templates/util_date_test.go | 20 +++++++++++++++----- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/modules/templates/util_date.go b/modules/templates/util_date.go index 45dd8da02f..10f7cdb508 100644 --- a/modules/templates/util_date.go +++ b/modules/templates/util_date.go @@ -27,7 +27,7 @@ func (du *DateUtils) AbsoluteShort(time any) template.HTML { // AbsoluteLong renders in "January 01, 2006" format func (du *DateUtils) AbsoluteLong(time any) template.HTML { - return timeutil.DateTime("short", time) + return timeutil.DateTime("long", time) } // FullTime renders in "Jan 01, 2006 20:33:44" format diff --git a/modules/templates/util_date_test.go b/modules/templates/util_date_test.go index 96c3776d39..e3dec5c8db 100644 --- a/modules/templates/util_date_test.go +++ b/modules/templates/util_date_test.go @@ -4,6 +4,7 @@ package templates import ( + "html/template" "testing" "time" @@ -12,10 +13,12 @@ import ( "code.gitea.io/gitea/modules/timeutil" "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" ) func TestDateTime(t *testing.T) { - testTz, _ := time.LoadLocation("America/New_York") + testTz, err := time.LoadLocation("America/New_York") + require.NoError(t, err) defer test.MockVariableValue(&setting.DefaultUILocation, testTz)() defer test.MockVariableValue(&setting.IsInTesting, false)() @@ -26,10 +29,11 @@ func TestDateTime(t *testing.T) { refTime, _ := time.Parse(time.RFC3339, refTimeStr) refTimeStamp := timeutil.TimeStamp(refTime.Unix()) - assert.EqualValues(t, "-", du.AbsoluteShort(nil)) - assert.EqualValues(t, "-", du.AbsoluteShort(0)) - assert.EqualValues(t, "-", du.AbsoluteShort(time.Time{})) - assert.EqualValues(t, "-", du.AbsoluteShort(timeutil.TimeStamp(0))) + for _, val := range []any{nil, 0, time.Time{}, timeutil.TimeStamp(0)} { + for _, fun := range []func(val any) template.HTML{du.AbsoluteLong, du.AbsoluteShort, du.FullTime} { + assert.EqualValues(t, "-", fun(val)) + } + } actual := dateTimeLegacy("short", "invalid") assert.EqualValues(t, `-`, actual) @@ -40,12 +44,18 @@ func TestDateTime(t *testing.T) { actual = du.AbsoluteShort(refTime) assert.EqualValues(t, `2018-01-01`, actual) + actual = du.AbsoluteLong(refTime) + assert.EqualValues(t, `2018-01-01`, actual) + actual = dateTimeLegacy("short", refDateStr) assert.EqualValues(t, `2018-01-01`, actual) actual = du.AbsoluteShort(refTimeStamp) assert.EqualValues(t, `2017-12-31`, actual) + actual = du.AbsoluteLong(refTimeStamp) + assert.EqualValues(t, `2017-12-31`, actual) + actual = du.FullTime(refTimeStamp) assert.EqualValues(t, `2017-12-31 19:00:00 -05:00`, actual) }