Skip to content

Commit 749802c

Browse files
authored
Refactor: TotalTimest return seconds (#25370)
so template/browser can deal with string format --- *Sponsored by Kithara Software GmbH*
1 parent bd2e322 commit 749802c

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

models/issues/tracked_time.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -199,8 +199,8 @@ func addTime(ctx context.Context, user *user_model.User, issue *Issue, amount in
199199
return tt, db.Insert(ctx, tt)
200200
}
201201

202-
// TotalTimes returns the spent time for each user by an issue
203-
func TotalTimes(options *FindTrackedTimesOptions) (map[*user_model.User]string, error) {
202+
// TotalTimes returns the spent time in seconds for each user by an issue
203+
func TotalTimes(options *FindTrackedTimesOptions) (map[*user_model.User]int64, error) {
204204
trackedTimes, err := GetTrackedTimes(db.DefaultContext, options)
205205
if err != nil {
206206
return nil, err
@@ -211,7 +211,7 @@ func TotalTimes(options *FindTrackedTimesOptions) (map[*user_model.User]string,
211211
totalTimesByUser[t.UserID] += t.Time
212212
}
213213

214-
totalTimes := make(map[*user_model.User]string)
214+
totalTimes := make(map[*user_model.User]int64)
215215
// Fetching User and making time human readable
216216
for userID, total := range totalTimesByUser {
217217
user, err := user_model.GetUserByID(db.DefaultContext, userID)
@@ -221,7 +221,7 @@ func TotalTimes(options *FindTrackedTimesOptions) (map[*user_model.User]string,
221221
}
222222
return nil, err
223223
}
224-
totalTimes[user] = util.SecToTime(total)
224+
totalTimes[user] = total
225225
}
226226
return totalTimes, nil
227227
}

models/issues/tracked_time_test.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -86,18 +86,18 @@ func TestTotalTimes(t *testing.T) {
8686
assert.NoError(t, err)
8787
assert.Len(t, total, 1)
8888
for user, time := range total {
89-
assert.Equal(t, int64(1), user.ID)
90-
assert.Equal(t, "6 minutes 40 seconds", time)
89+
assert.EqualValues(t, 1, user.ID)
90+
assert.EqualValues(t, 400, time)
9191
}
9292

9393
total, err = issues_model.TotalTimes(&issues_model.FindTrackedTimesOptions{IssueID: 2})
9494
assert.NoError(t, err)
9595
assert.Len(t, total, 2)
9696
for user, time := range total {
9797
if user.ID == 2 {
98-
assert.Equal(t, "1 hour 1 minute", time)
98+
assert.EqualValues(t, 3662, time)
9999
} else if user.ID == 1 {
100-
assert.Equal(t, "20 seconds", time)
100+
assert.EqualValues(t, 20, time)
101101
} else {
102102
assert.Error(t, assert.AnError)
103103
}
@@ -107,8 +107,8 @@ func TestTotalTimes(t *testing.T) {
107107
assert.NoError(t, err)
108108
assert.Len(t, total, 1)
109109
for user, time := range total {
110-
assert.Equal(t, int64(2), user.ID)
111-
assert.Equal(t, "1 second", time)
110+
assert.EqualValues(t, 2, user.ID)
111+
assert.EqualValues(t, 1, time)
112112
}
113113

114114
total, err = issues_model.TotalTimes(&issues_model.FindTrackedTimesOptions{IssueID: 4})

templates/repo/issue/view_content/sidebar.tmpl

+1-1
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@
340340
<div class="content">
341341
{{template "shared/user/authorlink" $user}}
342342
<div class="text">
343-
{{$trackedtime}}
343+
{{$trackedtime|Sec2Time}}
344344
</div>
345345
</div>
346346
</div>

0 commit comments

Comments
 (0)