Skip to content

Commit 7d12a9a

Browse files
t0m4uk1991jdhayford
authored andcommitted
Use GHRepository.Visibility enum instead of a new one.
1 parent aa540b7 commit 7d12a9a

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
@@ -421,7 +421,7 @@ public void listCommitCommentsNoComments() throws IOException {
421421
public void searchAllPublicAndForkedRepos() throws IOException {
422422
PagedSearchIterable<GHRepository> list = gitHub.searchRepositories()
423423
.user("t0m4uk1991")
424-
.visibility(GHRepositorySearchBuilder.Visibility.PUBLIC)
424+
.visibility(GHRepository.Visibility.PUBLIC)
425425
.fork(GHRepositorySearchBuilder.Fork.ALL_INCLUDING_FORKS)
426426
.list();
427427
List<GHRepository> u = list.toList();
@@ -434,7 +434,7 @@ public void searchAllPublicAndForkedRepos() throws IOException {
434434
public void searchForPublicForkedOnlyRepos() throws IOException {
435435
PagedSearchIterable<GHRepository> list = gitHub.searchRepositories()
436436
.user("t0m4uk1991")
437-
.visibility(GHRepositorySearchBuilder.Visibility.PUBLIC)
437+
.visibility(GHRepository.Visibility.PUBLIC)
438438
.fork(GHRepositorySearchBuilder.Fork.FORKS_ONLY)
439439
.list();
440440
List<GHRepository> u = list.toList();
@@ -443,6 +443,22 @@ public void searchForPublicForkedOnlyRepos() throws IOException {
443443
assertThat(u.get(1).getName(), is("Complete-Python-3-Bootcamp"));
444444
}
445445

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

0 commit comments

Comments
 (0)