test(api): 处理器测试的每次请求在包结束后对照 openapi 校验状态码、响应与 2xx 请求体,SetupAllowed 纳入一致性比对,补齐漏记的状态码并修正空列表回 null

This commit is contained in:
Lemon-miaow committed 2026-09-25 18:24:47 +08:00
1 parent 1054e62fa9
commit e7326e6315
11 files changed
+937 -28

No files matched your search

+5 -5
View File
@@ -409,7 +409,7 @@ func TestMySubmissionsCarriesBuildOutcome(t *testing.T) {
// the whole list; any other lookup failure must surface, never be swallowed.
func TestMySubmissionsBuildLookupSemantics(t *testing.T) {
// Missing row (ErrNotFound): 200 with no build fields.
fs := &fakeSubmissions{byResult: []submit.Submission{{ID: "sub-1", BuildID: "bld-gone"}}}
fs := &fakeSubmissions{byResult: []submit.Submission{{ID: "sub-1", Status: submit.StatusApproved, BuildID: "bld-gone"}}}
api := appSubAPI(fs)
api.Builder = &fakeBuilder{}
w := do(api.ExternalHandler(), "GET", "/api/v1/me/submissions", "", nil)
@@ -486,9 +486,9 @@ func TestSubmissionListsForwardThePage(t *testing.T) {
// with no linked build asks nothing.
func TestSubmissionPageLooksUpBuildsOnce(t *testing.T) {
fs := &fakeSubmissions{listed: []submit.Submission{
{ID: "sub-1", BuildID: "bld-1"},
{ID: "sub-2"},
{ID: "sub-3", BuildID: "bld-3"},
{ID: "sub-1", Status: submit.StatusApproved, BuildID: "bld-1"},
{ID: "sub-2", Status: submit.StatusPendingReview},
{ID: "sub-3", Status: submit.StatusApproved, BuildID: "bld-3"},
}}
fb := &fakeBuilder{getBuilds: map[string]*build.Build{
"bld-1": {ID: "bld-1", Status: build.StatusSucceeded},
@@ -518,7 +518,7 @@ func TestSubmissionPageLooksUpBuildsOnce(t *testing.T) {
t.Fatalf("outcomes = %+v", got.Submissions)
}
fs.listed = []submit.Submission{{ID: "sub-2"}}
fs.listed = []submit.Submission{{ID: "sub-2", Status: submit.StatusPendingReview}}
fb.getManyIDs = nil
if w := do(api.ExternalHandler(), "GET", "/api/v1/submissions", "", nil); w.Code != http.StatusOK {
t.Fatalf("unlinked page: code = %d", w.Code)