aboutsummaryrefslogtreecommitdiffstats
path: root/models
diff options
context:
space:
mode:
author6543 <m.huber@kithara.com>2023-06-19 18:40:06 +0200
committerGitHub <noreply@github.com>2023-06-19 18:40:06 +0200
commit749802c9223b787c2681faac6e1f8798df219d50 (patch)
tree1711697f33f7d4049eddff44f9bf07e2617e247b /models
parentbd2e3226bea9a9af077d7a4991d45b716209f563 (diff)
downloadgitea-749802c9223b787c2681faac6e1f8798df219d50.tar.gz
gitea-749802c9223b787c2681faac6e1f8798df219d50.zip
Refactor: TotalTimest return seconds (#25370)
so template/browser can deal with string format --- *Sponsored by Kithara Software GmbH*
Diffstat (limited to 'models')
-rw-r--r--models/issues/tracked_time.go8
-rw-r--r--models/issues/tracked_time_test.go12
2 files changed, 10 insertions, 10 deletions
diff --git a/models/issues/tracked_time.go b/models/issues/tracked_time.go
index ac65d654f2..698014afeb 100644
--- a/models/issues/tracked_time.go
+++ b/models/issues/tracked_time.go
@@ -199,8 +199,8 @@ func addTime(ctx context.Context, user *user_model.User, issue *Issue, amount in
return tt, db.Insert(ctx, tt)
}
-// TotalTimes returns the spent time for each user by an issue
-func TotalTimes(options *FindTrackedTimesOptions) (map[*user_model.User]string, error) {
+// TotalTimes returns the spent time in seconds for each user by an issue
+func TotalTimes(options *FindTrackedTimesOptions) (map[*user_model.User]int64, error) {
trackedTimes, err := GetTrackedTimes(db.DefaultContext, options)
if err != nil {
return nil, err
@@ -211,7 +211,7 @@ func TotalTimes(options *FindTrackedTimesOptions) (map[*user_model.User]string,
totalTimesByUser[t.UserID] += t.Time
}
- totalTimes := make(map[*user_model.User]string)
+ totalTimes := make(map[*user_model.User]int64)
// Fetching User and making time human readable
for userID, total := range totalTimesByUser {
user, err := user_model.GetUserByID(db.DefaultContext, userID)
@@ -221,7 +221,7 @@ func TotalTimes(options *FindTrackedTimesOptions) (map[*user_model.User]string,
}
return nil, err
}
- totalTimes[user] = util.SecToTime(total)
+ totalTimes[user] = total
}
return totalTimes, nil
}
diff --git a/models/issues/tracked_time_test.go b/models/issues/tracked_time_test.go
index 99b977cca5..baa170b201 100644
--- a/models/issues/tracked_time_test.go
+++ b/models/issues/tracked_time_test.go
@@ -86,8 +86,8 @@ func TestTotalTimes(t *testing.T) {
assert.NoError(t, err)
assert.Len(t, total, 1)
for user, time := range total {
- assert.Equal(t, int64(1), user.ID)
- assert.Equal(t, "6 minutes 40 seconds", time)
+ assert.EqualValues(t, 1, user.ID)
+ assert.EqualValues(t, 400, time)
}
total, err = issues_model.TotalTimes(&issues_model.FindTrackedTimesOptions{IssueID: 2})
@@ -95,9 +95,9 @@ func TestTotalTimes(t *testing.T) {
assert.Len(t, total, 2)
for user, time := range total {
if user.ID == 2 {
- assert.Equal(t, "1 hour 1 minute", time)
+ assert.EqualValues(t, 3662, time)
} else if user.ID == 1 {
- assert.Equal(t, "20 seconds", time)
+ assert.EqualValues(t, 20, time)
} else {
assert.Error(t, assert.AnError)
}
@@ -107,8 +107,8 @@ func TestTotalTimes(t *testing.T) {
assert.NoError(t, err)
assert.Len(t, total, 1)
for user, time := range total {
- assert.Equal(t, int64(2), user.ID)
- assert.Equal(t, "1 second", time)
+ assert.EqualValues(t, 2, user.ID)
+ assert.EqualValues(t, 1, time)
}
total, err = issues_model.TotalTimes(&issues_model.FindTrackedTimesOptions{IssueID: 4})