File tree Expand file tree Collapse file tree 4 files changed +46
-1
lines changed
Octokit.Tests.Integration/Clients Expand file tree Collapse file tree 4 files changed +46
-1
lines changed Original file line number Diff line number Diff line change @@ -281,6 +281,28 @@ public async Task SearchForAllIssuesUsingTerm()
281281 Assert . NotEmpty ( openedIssues ) ;
282282 }
283283
284+ [ IntegrationTest ]
285+ public async Task SearchForLockedUnlockedIssues ( )
286+ {
287+
288+ var lockedIssuesRequest = new SearchIssuesRequest ( ) ;
289+ lockedIssuesRequest . Repos . Add ( "octokit" , "octokit.net" ) ;
290+ lockedIssuesRequest . Is = new List < IssueIsQualifier > { IssueIsQualifier . Issue , IssueIsQualifier . Locked } ;
291+
292+ var lockedIssues = await _gitHubClient . Search . SearchIssues ( lockedIssuesRequest ) ;
293+
294+ var unlockedIssuesRequest = new SearchIssuesRequest ( ) ;
295+
296+ unlockedIssuesRequest . Repos . Add ( "octokit" , "octokit.net" ) ;
297+ unlockedIssuesRequest . Is = new List < IssueIsQualifier > { IssueIsQualifier . Issue , IssueIsQualifier . Unlocked } ;
298+
299+
300+ var unlockedIssues = await _gitHubClient . Search . SearchIssues ( unlockedIssuesRequest ) ;
301+
302+ Assert . All ( lockedIssues . Items , i => Assert . True ( i . Locked ) ) ;
303+ Assert . All ( unlockedIssues . Items , i => Assert . False ( i . Locked ) ) ;
304+ }
305+
284306 [ IntegrationTest ]
285307 public async Task SearchForMergedPullRequests ( )
286308 {
Original file line number Diff line number Diff line change @@ -170,6 +170,17 @@ public void HandlesIsAttributeCorrectly()
170170 Assert . Contains ( "is:pr" , request . MergedQualifiers ( ) ) ;
171171 }
172172
173+ [ Fact ]
174+ public void HandlesIsLockedUnlockedAttributeCorrectly ( )
175+ {
176+ var request = new SearchIssuesRequest ( "test" ) ;
177+ Assert . DoesNotContain ( request . MergedQualifiers ( ) , x => x . Contains ( "is:" ) ) ;
178+
179+ request . Is = new List < IssueIsQualifier > { IssueIsQualifier . Locked , IssueIsQualifier . Unlocked } ;
180+ Assert . Contains ( "is:locked" , request . MergedQualifiers ( ) ) ;
181+ Assert . Contains ( "is:unlocked" , request . MergedQualifiers ( ) ) ;
182+ }
183+
173184 [ Fact ]
174185 public void HandlesStatusAttributeCorrectly ( )
175186 {
Original file line number Diff line number Diff line change @@ -489,7 +489,11 @@ public enum IssueIsQualifier
489489 [ Parameter ( Value = "private" ) ]
490490 Private ,
491491 [ Parameter ( Value = "public" ) ]
492- Public
492+ Public ,
493+ [ Parameter ( Value = "locked" ) ]
494+ Locked ,
495+ [ Parameter ( Value = "unlocked" ) ]
496+ Unlocked
493497 }
494498
495499 public enum IssueNoMetadataQualifier
Original file line number Diff line number Diff line change @@ -61,6 +61,14 @@ request.Involves = "terrajobst";
6161request .State = ItemState .All ;
6262// or to just search closed issues
6363request .State = ItemState .Closed ;
64+
65+ // you can filter by the "Is" qualifier
66+ // the enum IssueIsQualifier contains the supported values
67+ // you can filter for locked issues like this:
68+ request .Is = new List <IssueIsQualifier > {
69+ IssueIsQualifier .Issue ,
70+ IssueIsQualifier .Locked
71+ };
6472```
6573
6674There's other options available to control how the results are returned:
You can’t perform that action at this time.
0 commit comments