@@ -216,20 +216,54 @@ func TestSearchIssuesAndAdvancedSearch(t *testing.T) {
216216}
217217
218218func TestSearchIssues_rejectsPullRequestQualifiers (t * testing.T ) {
219- reg := & httpmock.Registry {}
220- defer reg .Verify (t )
219+ tests := []struct {
220+ name string
221+ search string
222+ }{
223+ {
224+ name : "is:pr" ,
225+ search : "is:pr" ,
226+ },
227+ {
228+ name : "type:pr" ,
229+ search : "type:pr" ,
230+ },
231+ {
232+ name : "type:pull-request" ,
233+ search : "type:pull-request" ,
234+ },
235+ {
236+ name : "type:pullrequest" ,
237+ search : "type:pullrequest" ,
238+ },
239+ {
240+ name : "case-insensitive is:PR" ,
241+ search : "is:PR" ,
242+ },
243+ {
244+ name : "case-insensitive TYPE:Pull-Request" ,
245+ search : "TYPE:Pull-Request" ,
246+ },
247+ }
221248
222- httpClient := & http.Client {Transport : reg }
223- client := api .NewClientFromHTTP (httpClient )
249+ for _ , tt := range tests {
250+ t .Run (tt .name , func (t * testing.T ) {
251+ reg := & httpmock.Registry {}
252+ defer reg .Verify (t )
224253
225- _ , err := searchIssues (
226- client ,
227- fd .AdvancedIssueSearchSupportedAsOnlyBackend (),
228- ghrepo .New ("OWNER" , "REPO" ),
229- prShared.FilterOptions {Search : "is:pr" },
230- 30 ,
231- )
254+ httpClient := & http.Client {Transport : reg }
255+ client := api .NewClientFromHTTP (httpClient )
232256
233- assert .EqualError (t , err , "cannot use pull request search qualifiers with `gh issue list`; use `gh pr list` instead" )
234- assert .Len (t , reg .Requests , 0 )
257+ _ , err := searchIssues (
258+ client ,
259+ fd .AdvancedIssueSearchSupportedAsOnlyBackend (),
260+ ghrepo .New ("OWNER" , "REPO" ),
261+ prShared.FilterOptions {Search : tt .search },
262+ 30 ,
263+ )
264+
265+ assert .EqualError (t , err , "cannot use pull request search qualifiers with `gh issue list`; use `gh pr list` instead" )
266+ assert .Len (t , reg .Requests , 0 )
267+ })
268+ }
235269}
0 commit comments