workflow_test:fakeSource.OpenIssues 依 number 排序,消除 map 迭代隨機性
審核意見(PR #36):issue 1 與 issue 3 在新邏輯下同為 10h, sort.SliceStable 平手時順序取決於 map 迭代隨機順序, TestScanStalledIssueReasons 的 got[0].Number != 1 斷言不穩定。 採建議修法 1:fakeSource.OpenIssues 回傳前依 number 遞增排序, 對齊真實 Gitea API(issues 依 id 遞增)行為。實作未動。 go build / go vet / go test ./... 全綠; TestScanStalledIssueReasons -count=50 重跑全綠。
This commit is contained in:
@@ -9,6 +9,7 @@ import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"sort"
|
||||
"strings"
|
||||
"testing"
|
||||
"time"
|
||||
@@ -43,6 +44,8 @@ func (f *fakeSource) OpenIssues(owner, repo string) ([]Issue, error) {
|
||||
for _, i := range f.issues[owner+"/"+repo] {
|
||||
out = append(out, i)
|
||||
}
|
||||
// 對齊真實 API:issues 依 id(=number)遞增回傳,消除 map 迭代隨機性。
|
||||
sort.Slice(out, func(a, b int) bool { return out[a].Number < out[b].Number })
|
||||
return out, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user