Skip to content

Commit 7b2b521

Browse files
committed
Use GHRepository.Visibility enum instead of a new one.
1 parent 2c323d2 commit 7b2b521

2 files changed

Lines changed: 23 additions & 16 deletions

File tree

src/main/java/org/kohsuke/github/GHRepositorySearchBuilder.java

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
package org.kohsuke.github;
22

3-
import java.util.Locale;
4-
53
/**
64
* Search repositories.
75
*
@@ -84,7 +82,11 @@ public GHRepositorySearchBuilder fork(Fork fork) {
8482
* by repository visibility</a>
8583
*
8684
*/
87-
public GHRepositorySearchBuilder visibility(Visibility visibility) {
85+
public GHRepositorySearchBuilder visibility(GHRepository.Visibility visibility) {
86+
if (visibility == GHRepository.Visibility.UNKNOWN) {
87+
return this;
88+
}
89+
8890
return q("is:" + visibility);
8991
}
9092

@@ -212,17 +214,6 @@ public String toString() {
212214
}
213215
}
214216

215-
/**
216-
* The enum Visibility.
217-
*/
218-
public enum Visibility {
219-
PUBLIC, INTERNAL, PRIVATE;
220-
221-
public String toString() {
222-
return name().toLowerCase(Locale.ENGLISH);
223-
}
224-
}
225-
226217
private static class RepositorySearchResult extends SearchResult<GHRepository> {
227218
private GHRepository[] items;
228219

src/test/java/org/kohsuke/github/GHRepositoryTest.java

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -417,7 +417,7 @@ public void listCommitCommentsNoComments() throws IOException {
417417
public void searchAllPublicAndForkedRepos() throws IOException {
418418
PagedSearchIterable<GHRepository> list = gitHub.searchRepositories()
419419
.user("t0m4uk1991")
420-
.visibility(GHRepositorySearchBuilder.Visibility.PUBLIC)
420+
.visibility(GHRepository.Visibility.PUBLIC)
421421
.fork(GHRepositorySearchBuilder.Fork.ALL_INCLUDING_FORKS)
422422
.list();
423423
List<GHRepository> u = list.toList();
@@ -430,7 +430,7 @@ public void searchAllPublicAndForkedRepos() throws IOException {
430430
public void searchForPublicForkedOnlyRepos() throws IOException {
431431
PagedSearchIterable<GHRepository> list = gitHub.searchRepositories()
432432
.user("t0m4uk1991")
433-
.visibility(GHRepositorySearchBuilder.Visibility.PUBLIC)
433+
.visibility(GHRepository.Visibility.PUBLIC)
434434
.fork(GHRepositorySearchBuilder.Fork.FORKS_ONLY)
435435
.list();
436436
List<GHRepository> u = list.toList();
@@ -439,6 +439,22 @@ public void searchForPublicForkedOnlyRepos() throws IOException {
439439
assertThat(u.get(1).getName(), is("Complete-Python-3-Bootcamp"));
440440
}
441441

442+
@Test
443+
public void ghRepositorySearchBuilderIgnoresUnknownVisibility() {
444+
GHRepositorySearchBuilder ghRepositorySearchBuilder;
445+
ghRepositorySearchBuilder = new GHRepositorySearchBuilder(gitHub).visibility(Visibility.UNKNOWN);
446+
assertThat(ghRepositorySearchBuilder.terms.stream().filter(item -> item.contains("is:")).count(), is(0L));
447+
448+
ghRepositorySearchBuilder = new GHRepositorySearchBuilder(gitHub).visibility(Visibility.PUBLIC);
449+
assertThat(ghRepositorySearchBuilder.terms.stream().filter(item -> item.contains("is:")).count(), is(1L));
450+
451+
ghRepositorySearchBuilder = new GHRepositorySearchBuilder(gitHub).visibility(Visibility.PRIVATE);
452+
assertThat(ghRepositorySearchBuilder.terms.stream().filter(item -> item.contains("is:")).count(), is(1L));
453+
454+
ghRepositorySearchBuilder = new GHRepositorySearchBuilder(gitHub).visibility(Visibility.INTERNAL);
455+
assertThat(ghRepositorySearchBuilder.terms.stream().filter(item -> item.contains("is:")).count(), is(1L));
456+
}
457+
442458
@Test
443459
public void listCommitCommentsSomeComments() throws IOException {
444460
List<GHCommitComment> commitComments = getRepository()

0 commit comments

Comments
 (0)