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"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
@@ -43,6 +44,8 @@ func (f *fakeSource) OpenIssues(owner, repo string) ([]Issue, error) {
|
|||||||
for _, i := range f.issues[owner+"/"+repo] {
|
for _, i := range f.issues[owner+"/"+repo] {
|
||||||
out = append(out, i)
|
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
|
return out, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user