From b601b307a4d2db5c77e369f7ec01dcca2ab89271 Mon Sep 17 00:00:00 2001 From: Louis Shawn Date: Tue, 3 Mar 2026 10:13:57 +0800 Subject: [PATCH] test(issue list): cover additional PR search qualifier variants --- pkg/cmd/issue/list/http_test.go | 60 ++++++++++++++++++++++++++------- 1 file changed, 47 insertions(+), 13 deletions(-) diff --git a/pkg/cmd/issue/list/http_test.go b/pkg/cmd/issue/list/http_test.go index 52d355702..d313da90b 100644 --- a/pkg/cmd/issue/list/http_test.go +++ b/pkg/cmd/issue/list/http_test.go @@ -216,20 +216,54 @@ func TestSearchIssuesAndAdvancedSearch(t *testing.T) { } func TestSearchIssues_rejectsPullRequestQualifiers(t *testing.T) { - reg := &httpmock.Registry{} - defer reg.Verify(t) + tests := []struct { + name string + search string + }{ + { + name: "is:pr", + search: "is:pr", + }, + { + name: "type:pr", + search: "type:pr", + }, + { + name: "type:pull-request", + search: "type:pull-request", + }, + { + name: "type:pullrequest", + search: "type:pullrequest", + }, + { + name: "case-insensitive is:PR", + search: "is:PR", + }, + { + name: "case-insensitive TYPE:Pull-Request", + search: "TYPE:Pull-Request", + }, + } - httpClient := &http.Client{Transport: reg} - client := api.NewClientFromHTTP(httpClient) + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + reg := &httpmock.Registry{} + defer reg.Verify(t) - _, err := searchIssues( - client, - fd.AdvancedIssueSearchSupportedAsOnlyBackend(), - ghrepo.New("OWNER", "REPO"), - prShared.FilterOptions{Search: "is:pr"}, - 30, - ) + httpClient := &http.Client{Transport: reg} + client := api.NewClientFromHTTP(httpClient) - assert.EqualError(t, err, "cannot use pull request search qualifiers with `gh issue list`; use `gh pr list` instead") - assert.Len(t, reg.Requests, 0) + _, err := searchIssues( + client, + fd.AdvancedIssueSearchSupportedAsOnlyBackend(), + ghrepo.New("OWNER", "REPO"), + prShared.FilterOptions{Search: tt.search}, + 30, + ) + + assert.EqualError(t, err, "cannot use pull request search qualifiers with `gh issue list`; use `gh pr list` instead") + assert.Len(t, reg.Requests, 0) + }) + } }