Skip to content

Commit 0e7e7c6

Browse files
authored
Added Trigger Filter Tests (#110)
* Added RegexBasedFilterTest.java * Added NameBasedFilterTest.java
1 parent 2ab940b commit 0e7e7c6

File tree

2 files changed

+93
-0
lines changed

2 files changed

+93
-0
lines changed
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
package com.gitee.jenkins.trigger.filter;
2+
3+
import static org.hamcrest.CoreMatchers.is;
4+
import static org.hamcrest.MatcherAssert.assertThat;
5+
6+
import org.junit.jupiter.api.Test;
7+
8+
/**
9+
* @author Robin Müller
10+
*/
11+
class NameBasedFilterTest {
12+
13+
@Test
14+
void includeBranches() {
15+
NameBasedFilter nameBasedFilter = new NameBasedFilter("master, develop", "");
16+
17+
assertThat(nameBasedFilter.isBranchAllowed("master"), is(true));
18+
assertThat(nameBasedFilter.isBranchAllowed("develop"), is(true));
19+
assertThat(nameBasedFilter.isBranchAllowed("not-included-branch"), is(false));
20+
}
21+
22+
@Test
23+
void excludeBranches() {
24+
NameBasedFilter nameBasedFilter = new NameBasedFilter("", "master, develop");
25+
26+
assertThat(nameBasedFilter.isBranchAllowed("master"), is(false));
27+
assertThat(nameBasedFilter.isBranchAllowed("develop"), is(false));
28+
assertThat(nameBasedFilter.isBranchAllowed("not-excluded-branch"), is(true));
29+
}
30+
31+
@Test
32+
void includeAndExcludeBranches() {
33+
NameBasedFilter nameBasedFilter = new NameBasedFilter("master", "develop");
34+
35+
assertThat(nameBasedFilter.isBranchAllowed("master"), is(true));
36+
assertThat(nameBasedFilter.isBranchAllowed("develop"), is(false));
37+
assertThat(nameBasedFilter.isBranchAllowed("not-excluded-and-not-included-branch"), is(false));
38+
}
39+
40+
@Test
41+
void allowIncludeAndExcludeToBeNull() {
42+
NameBasedFilter nameBasedFilter = new NameBasedFilter(null, null);
43+
44+
assertThat(nameBasedFilter.isBranchAllowed("master"), is(true));
45+
}
46+
47+
@Test
48+
void allowIncludeToBeNull() {
49+
NameBasedFilter nameBasedFilter = new NameBasedFilter(null, "master, develop");
50+
51+
assertThat(nameBasedFilter.isBranchAllowed("master"), is(false));
52+
assertThat(nameBasedFilter.isBranchAllowed("develop"), is(false));
53+
assertThat(nameBasedFilter.isBranchAllowed("not-excluded-branch"), is(true));
54+
}
55+
56+
@Test
57+
void allowExcludeToBeNull() {
58+
NameBasedFilter nameBasedFilter = new NameBasedFilter("master, develop", null);
59+
60+
assertThat(nameBasedFilter.isBranchAllowed("master"), is(true));
61+
assertThat(nameBasedFilter.isBranchAllowed("develop"), is(true));
62+
assertThat(nameBasedFilter.isBranchAllowed("not-included-branch"), is(false));
63+
}
64+
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package com.gitee.jenkins.trigger.filter;
2+
3+
import static org.hamcrest.CoreMatchers.is;
4+
import static org.hamcrest.MatcherAssert.assertThat;
5+
6+
import org.junit.jupiter.params.ParameterizedTest;
7+
import org.junit.jupiter.params.provider.ValueSource;
8+
9+
/**
10+
* @author Robin Müller
11+
*/
12+
class RegexBasedFilterTest {
13+
14+
@ParameterizedTest
15+
@ValueSource(strings = {"feature/test", "feature/awesome-feature"})
16+
void isRegexBranchAllowed(String branchName) {
17+
RegexBasedFilter featureBranches = new RegexBasedFilter("feature/.*");
18+
19+
assertThat(featureBranches.isBranchAllowed(branchName), is(true));
20+
}
21+
22+
@ParameterizedTest
23+
@ValueSource(strings = {"hotfix/test", "hotfix/awesome-feature", "master", "develop"})
24+
void isRegexBranchNotAllowed(String branchName) {
25+
RegexBasedFilter featureBranches = new RegexBasedFilter("feature/.*");
26+
27+
assertThat(featureBranches.isBranchAllowed(branchName), is(false));
28+
}
29+
}

0 commit comments

Comments
 (0)