Skip to content

Commit 91eba7e

Browse files
committed
test: Improving code coverage of the tests
1 parent 4483750 commit 91eba7e

12 files changed

Lines changed: 270 additions & 19 deletions

File tree

codeowners-reader/src/test/kotlin/nl/basjes/codeowners/TestCodeOwnersGetters.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,21 @@
3131

3232
class TestCodeOwnersGetters {
3333

34+
@Test
35+
void verifyVerbose() {
36+
CodeOwners codeOwners = new CodeOwners("docs/");
37+
codeOwners.setVerbose(true);
38+
assertTrue(codeOwners.getVerbose());
39+
codeOwners.setVerbose(false);
40+
assertFalse(codeOwners.getVerbose());
41+
42+
Section section = new Section("foo");
43+
section.setVerbose(true);
44+
assertTrue(section.getVerbose());
45+
section.setVerbose(false);
46+
assertFalse(section.getVerbose());
47+
}
48+
3449
@Test
3550
void verifyGetters() {
3651
CodeOwners codeOwners = new CodeOwners(

codeowners-validator/src/test/kotlin/nl/basjes/codeowners/validator/gitlab/TestGitlabConfigurationAccessToken.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ public void testAccessTokenEnvValidValue() {
3737
AccessToken accessToken = new AccessToken("MY_SECRET_TOKEN");
3838
assertTrue(accessToken.isValid());
3939
assertEquals("gltst-mySecretToken", accessToken.getValue());
40+
assertEquals("gltst-*****en", accessToken.getSanitizedValue());
4041

4142
// Ensure the actual token value is hidden in a toString()
4243
log.info("{}", accessToken);
@@ -50,6 +51,7 @@ public void testAccessTokenEnvValidValueShortToken() {
5051
AccessToken accessToken = new AccessToken("MY_SECRET_TOKEN");
5152
assertTrue(accessToken.isValid());
5253
assertEquals("short", accessToken.getValue());
54+
assertEquals("***", accessToken.getSanitizedValue());
5355

5456
// Ensure the actual token value is hidden in a toString()
5557
log.info("{}", accessToken);
@@ -64,6 +66,7 @@ public void testAccessTokenEnvBadValue() {
6466
assertFalse(accessToken.isValid());
6567
assertNull(accessToken.getValue());
6668
log.info("{}", accessToken);
69+
assertEquals("<<<null>>>", accessToken.getSanitizedValue());
6770
assertTrue(accessToken.toString().contains("AccessToken could not be loaded: the value from environment variable \"MY_SECRET_TOKEN\" is NOT valid."));
6871
}
6972

@@ -74,6 +77,7 @@ public void testAccessTokenEnvEmptyValue() {
7477
assertFalse(accessToken.isValid());
7578
assertNull(accessToken.getValue());
7679
log.info("{}", accessToken);
80+
assertEquals("<<<null>>>", accessToken.getSanitizedValue());
7781
assertTrue(accessToken.toString().contains("AccessToken could not be loaded: the value from environment variable \"MY_SECRET_TOKEN\" is NOT valid."));
7882
}
7983

@@ -84,6 +88,7 @@ public void testAccessTokenEnvMissing() {
8488
assertFalse(accessToken.isValid());
8589
assertNull(accessToken.getValue());
8690
log.info("{}", accessToken);
91+
assertEquals("<<<null>>>", accessToken.getSanitizedValue());
8792
assertTrue(accessToken.toString().contains("AccessToken could not be loaded: the environment variable \"MY_SECRET_TOKEN\" does not exist."));
8893
}
8994

@@ -93,15 +98,27 @@ public void testAccessTokenEnvNameEmpty() {
9398
assertFalse(accessToken.isValid());
9499
assertNull(accessToken.getValue());
95100
log.info("{}", accessToken);
101+
assertEquals("<<<null>>>", accessToken.getSanitizedValue());
96102
assertTrue(accessToken.toString().contains("AccessToken could not be loaded: no environment variable was specified."));
97103
}
98104

105+
@Test
106+
public void testAccessTokenEnvNameBlank() {
107+
AccessToken accessToken = new AccessToken(" ");
108+
assertFalse(accessToken.isValid());
109+
assertNull(accessToken.getValue());
110+
log.info("{}", accessToken);
111+
assertEquals("<<<null>>>", accessToken.getSanitizedValue());
112+
assertTrue(accessToken.toString().contains("AccessToken could not be loaded: the environment variable name \" \" is blank."));
113+
}
114+
99115
@Test
100116
public void testAccessTokenEnvNameNull() {
101117
AccessToken accessToken = new AccessToken(null);
102118
assertFalse(accessToken.isValid());
103119
assertNull(accessToken.getValue());
104120
log.info("{}", accessToken);
121+
assertEquals("<<<null>>>", accessToken.getSanitizedValue());
105122
assertTrue(accessToken.toString().contains("AccessToken could not be loaded: no environment variable was specified."));
106123
}
107124

codeowners-validator/src/test/kotlin/nl/basjes/codeowners/validator/gitlab/TestGitlabConfigurationProjectId.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ public void testProjectIdDefaultEnvValidValue() {
3838
assertTrue(projectId.isValid());
3939
assertEquals("niels/project", projectId.getValue());
4040
log.info("{}", projectId);
41+
assertEquals("niels/project", projectId.getSanitizedValue());
4142
assertTrue(projectId.toString().contains("(via environment variable \"CI_PROJECT_ID\")"));
4243
}
4344

@@ -48,6 +49,7 @@ public void testProjectIdDefaultEnvBadValue() {
4849
assertFalse(projectId.isValid());
4950
assertNull(projectId.getValue());
5051
log.info("{}", projectId);
52+
assertEquals("<<<null>>>", projectId.getSanitizedValue());
5153
assertTrue(projectId.toString().contains("the value from environment variable \"CI_PROJECT_ID\" is NOT valid"));
5254
}
5355

@@ -58,6 +60,7 @@ public void testProjectIdDefaultEnvEmptyValue() {
5860
assertFalse(projectId.isValid());
5961
assertNull(projectId.getValue());
6062
log.info("{}", projectId);
63+
assertEquals("<<<null>>>", projectId.getSanitizedValue());
6164
assertTrue(projectId.toString().contains("the value from environment variable \"CI_PROJECT_ID\" is NOT valid"));
6265
}
6366

@@ -68,6 +71,7 @@ public void testProjectIdDefaultEnvMissing() {
6871
assertFalse(projectId.isValid());
6972
assertNull(projectId.getValue());
7073
log.info("{}", projectId);
74+
assertEquals("<<<null>>>", projectId.getSanitizedValue());
7175
assertTrue(projectId.toString().contains("the environment variable \"CI_PROJECT_ID\" does not exist"));
7276
}
7377

@@ -78,6 +82,7 @@ public void testProjectIdCustomEnvValidValue() {
7882
assertTrue(projectId.isValid());
7983
assertEquals("niels/project", projectId.getValue());
8084
log.info("{}", projectId);
85+
assertEquals("niels/project", projectId.getSanitizedValue());
8186
assertTrue(projectId.toString().contains("(via environment variable \"MY_SPECIAL_PROJECT_ID\")"));
8287
}
8388

@@ -88,6 +93,7 @@ public void testProjectIdCustomEnvBadValue() {
8893
assertFalse(projectId.isValid());
8994
assertNull(projectId.getValue());
9095
log.info("{}", projectId);
96+
assertEquals("<<<null>>>", projectId.getSanitizedValue());
9197
assertTrue(projectId.toString().contains("the value from environment variable \"MY_SPECIAL_PROJECT_ID\" is NOT valid"));
9298
}
9399

@@ -98,6 +104,7 @@ public void testProjectIdCustomEnvEmptyValue() {
98104
assertFalse(projectId.isValid());
99105
assertNull(projectId.getValue());
100106
log.info("{}", projectId);
107+
assertEquals("<<<null>>>", projectId.getSanitizedValue());
101108
assertTrue(projectId.toString().contains("the value from environment variable \"MY_SPECIAL_PROJECT_ID\" is NOT valid"));
102109
}
103110

@@ -108,6 +115,7 @@ public void testProjectIdCustomEnvMissing() {
108115
assertFalse(projectId.isValid());
109116
assertNull(projectId.getValue());
110117
log.info("{}", projectId);
118+
assertEquals("<<<null>>>", projectId.getSanitizedValue());
111119
assertTrue(projectId.toString().contains("the environment variable \"MY_SPECIAL_PROJECT_ID\" does not exist"));
112120
}
113121

@@ -120,13 +128,24 @@ public void testProjectIdCustomEnvNameEmpty() {
120128
assertTrue(projectId.toString().contains("the environment variable \"CI_PROJECT_ID\" does not exist"));
121129
}
122130

131+
@Test
132+
public void testProjectIdCustomEnvNameBlank() {
133+
ProjectId projectId = new ProjectId(null, " ");
134+
assertFalse(projectId.isValid());
135+
assertNull(projectId.getValue());
136+
log.info("{}", projectId);
137+
assertEquals("<<<null>>>", projectId.getSanitizedValue());
138+
assertTrue(projectId.toString().contains("the environment variable name \" \" is blank."));
139+
}
140+
123141
@Test
124142
@SetEnvironmentVariable(key = "MY_SPECIAL_PROJECT_ID", value = "niels/project") // <<-- Fallback
125143
public void testProjectIdDirectValidValue() {
126144
ProjectId projectId = new ProjectId("otherproject", "MY_SPECIAL_PROJECT_ID");
127145
assertTrue(projectId.isValid());
128146
assertEquals("otherproject", projectId.getValue());
129147
log.info("{}", projectId);
148+
assertEquals("otherproject", projectId.getSanitizedValue());
130149
assertTrue(projectId.toString().contains("(via property \"gitlab.projectId.id\")"));
131150
}
132151

@@ -138,6 +157,7 @@ public void testProjectIdDirectBadValue() {
138157
assertFalse(projectId.isValid());
139158
assertNull(projectId.getValue());
140159
log.info("{}", projectId);
160+
assertEquals("<<<null>>>", projectId.getSanitizedValue());
141161
assertTrue(projectId.toString().contains("the value found using property \"gitlab.projectId.id\" is not valid"));
142162
}
143163

@@ -148,6 +168,7 @@ public void testProjectIdDirectEmptyValueFallBackDefault() {
148168
assertTrue(projectId.isValid());
149169
assertEquals("niels/project", projectId.getValue());
150170
log.info("{}", projectId);
171+
assertEquals("niels/project", projectId.getSanitizedValue());
151172
assertTrue(projectId.toString().contains("(via environment variable \"CI_PROJECT_ID\")"));
152173
}
153174

@@ -158,6 +179,7 @@ public void testProjectIdDirectMissingFallBackDefault() {
158179
assertTrue(projectId.isValid());
159180
assertEquals("niels/project", projectId.getValue());
160181
log.info("{}", projectId);
182+
assertEquals("niels/project", projectId.getSanitizedValue());
161183
assertTrue(projectId.toString().contains("(via environment variable \"CI_PROJECT_ID\")"));
162184
}
163185

@@ -168,6 +190,7 @@ public void testProjectIdDirectEmptyValueFallBackCustom() {
168190
assertTrue(projectId.isValid());
169191
assertEquals("niels/project", projectId.getValue());
170192
log.info("{}", projectId);
193+
assertEquals("niels/project", projectId.getSanitizedValue());
171194
assertTrue(projectId.toString().contains("(via environment variable \"MY_SPECIAL_PROJECT_ID\")"));
172195
}
173196

@@ -178,6 +201,7 @@ public void testProjectIdDirectMissingFallBackCustom() {
178201
assertTrue(projectId.isValid());
179202
assertEquals("niels/project", projectId.getValue());
180203
log.info("{}", projectId);
204+
assertEquals("niels/project", projectId.getSanitizedValue());
181205
assertTrue(projectId.toString().contains("(via environment variable \"MY_SPECIAL_PROJECT_ID\")"));
182206
}
183207

codeowners-validator/src/test/kotlin/nl/basjes/codeowners/validator/gitlab/TestGitlabConfigurationServerUrl.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ public void testServerUrlDefaultEnvValidValue() {
3838
assertTrue(serverUrl.isValid());
3939
assertEquals("https://git.example.nl", serverUrl.getValue());
4040
log.info("{}", serverUrl);
41+
assertEquals("https://git.example.nl", serverUrl.getSanitizedValue());
4142
assertTrue(serverUrl.toString().contains("(via environment variable \"CI_SERVER_URL\")"));
4243
}
4344

@@ -48,6 +49,7 @@ public void testServerUrlDefaultEnvBadValue() {
4849
assertFalse(serverUrl.isValid());
4950
assertNull(serverUrl.getValue());
5051
log.info("{}", serverUrl);
52+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
5153
assertTrue(serverUrl.toString().contains("the value from environment variable \"CI_SERVER_URL\" is NOT valid"));
5254
}
5355

@@ -58,6 +60,7 @@ public void testServerUrlDefaultEnvEmptyValue() {
5860
assertFalse(serverUrl.isValid());
5961
assertNull(serverUrl.getValue());
6062
log.info("{}", serverUrl);
63+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
6164
assertTrue(serverUrl.toString().contains("the value from environment variable \"CI_SERVER_URL\" is NOT valid"));
6265
}
6366

@@ -68,6 +71,7 @@ public void testServerUrlDefaultEnvMissing() {
6871
assertFalse(serverUrl.isValid());
6972
assertNull(serverUrl.getValue());
7073
log.info("{}", serverUrl);
74+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
7175
assertTrue(serverUrl.toString().contains("the environment variable \"CI_SERVER_URL\" does not exist"));
7276
}
7377

@@ -78,6 +82,7 @@ public void testServerUrlCustomEnvValidValue() {
7882
assertTrue(serverUrl.isValid());
7983
assertEquals("https://git.example.nl", serverUrl.getValue());
8084
log.info("{}", serverUrl);
85+
assertEquals("https://git.example.nl", serverUrl.getSanitizedValue());
8186
assertTrue(serverUrl.toString().contains("(via environment variable \"MY_SPECIAL_SERVER_URL\")"));
8287
}
8388

@@ -88,6 +93,7 @@ public void testServerUrlCustomEnvBadValue() {
8893
assertFalse(serverUrl.isValid());
8994
assertNull(serverUrl.getValue());
9095
log.info("{}", serverUrl);
96+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
9197
assertTrue(serverUrl.toString().contains("the value from environment variable \"MY_SPECIAL_SERVER_URL\" is NOT valid"));
9298
}
9399

@@ -98,6 +104,7 @@ public void testServerUrlCustomEnvEmptyValue() {
98104
assertFalse(serverUrl.isValid());
99105
assertNull(serverUrl.getValue());
100106
log.info("{}", serverUrl);
107+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
101108
assertTrue(serverUrl.toString().contains("the value from environment variable \"MY_SPECIAL_SERVER_URL\" is NOT valid"));
102109
}
103110

@@ -108,6 +115,7 @@ public void testServerUrlCustomEnvMissing() {
108115
assertFalse(serverUrl.isValid());
109116
assertNull(serverUrl.getValue());
110117
log.info("{}", serverUrl);
118+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
111119
assertTrue(serverUrl.toString().contains("the environment variable \"MY_SPECIAL_SERVER_URL\" does not exist"));
112120
}
113121

@@ -117,16 +125,28 @@ public void testServerUrlCustomEnvNameEmpty() {
117125
assertFalse(serverUrl.isValid());
118126
assertNull(serverUrl.getValue());
119127
log.info("{}", serverUrl);
128+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
120129
assertTrue(serverUrl.toString().contains("the environment variable \"CI_SERVER_URL\" does not exist"));
121130
}
122131

132+
@Test
133+
public void testServerUrlCustomEnvNameBlank() {
134+
ServerUrl serverUrl = new ServerUrl(null, " ");
135+
assertFalse(serverUrl.isValid());
136+
assertNull(serverUrl.getValue());
137+
log.info("{}", serverUrl);
138+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
139+
assertTrue(serverUrl.toString().contains("the environment variable name \" \" is blank."));
140+
}
141+
123142
@Test
124143
@SetEnvironmentVariable(key = "MY_SPECIAL_SERVER_URL", value = "https://git.example.nl") // <<-- Fallback
125144
public void testServerUrlDirectValidValue() {
126145
ServerUrl serverUrl = new ServerUrl("https://git.example.com", "MY_SPECIAL_SERVER_URL");
127146
assertTrue(serverUrl.isValid());
128147
assertEquals("https://git.example.com", serverUrl.getValue());
129148
log.info("{}", serverUrl);
149+
assertEquals("https://git.example.com", serverUrl.getSanitizedValue());
130150
assertTrue(serverUrl.toString().contains("(via property \"gitlab.serverUrl.url\")"));
131151
}
132152

@@ -138,6 +158,7 @@ public void testServerUrlDirectBadValue() {
138158
assertFalse(serverUrl.isValid());
139159
assertNull(serverUrl.getValue());
140160
log.info("{}", serverUrl);
161+
assertEquals("<<<null>>>", serverUrl.getSanitizedValue());
141162
assertTrue(serverUrl.toString().contains("the value found using property \"gitlab.serverUrl.url\" is not valid"));
142163
}
143164

@@ -148,6 +169,7 @@ public void testServerUrlDirectEmptyValueFallBackDefault() {
148169
assertTrue(serverUrl.isValid());
149170
assertEquals("https://git.example.nl", serverUrl.getValue());
150171
log.info("{}", serverUrl);
172+
assertEquals("https://git.example.nl", serverUrl.getSanitizedValue());
151173
assertTrue(serverUrl.toString().contains("(via environment variable \"CI_SERVER_URL\")"));
152174
}
153175

@@ -158,6 +180,7 @@ public void testServerUrlDirectMissingFallBackDefault() {
158180
assertTrue(serverUrl.isValid());
159181
assertEquals("https://git.example.nl", serverUrl.getValue());
160182
log.info("{}", serverUrl);
183+
assertEquals("https://git.example.nl", serverUrl.getSanitizedValue());
161184
assertTrue(serverUrl.toString().contains("(via environment variable \"CI_SERVER_URL\")"));
162185
}
163186

@@ -168,6 +191,7 @@ public void testServerUrlDirectEmptyValueFallBackCustom() {
168191
assertTrue(serverUrl.isValid());
169192
assertEquals("https://git.example.nl", serverUrl.getValue());
170193
log.info("{}", serverUrl);
194+
assertEquals("https://git.example.nl", serverUrl.getSanitizedValue());
171195
assertTrue(serverUrl.toString().contains("(via environment variable \"MY_SPECIAL_SERVER_URL\")"));
172196
}
173197

@@ -178,6 +202,7 @@ public void testServerUrlDirectMissingFallBackCustom() {
178202
assertTrue(serverUrl.isValid());
179203
assertEquals("https://git.example.nl", serverUrl.getValue());
180204
log.info("{}", serverUrl);
205+
assertEquals("https://git.example.nl", serverUrl.getSanitizedValue());
181206
assertTrue(serverUrl.toString().contains("(via environment variable \"MY_SPECIAL_SERVER_URL\")"));
182207
}
183208

enforcer/pom.xml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,14 +78,12 @@
7878
<dependency>
7979
<groupId>org.junit-pioneer</groupId>
8080
<artifactId>junit-pioneer</artifactId>
81-
<version>2.3.0</version>
8281
<scope>test</scope>
8382
</dependency>
8483

8584
<dependency>
8685
<groupId>ch.qos.logback</groupId>
8786
<artifactId>logback-classic</artifactId>
88-
<version>1.5.32</version>
8987
<scope>test</scope>
9088
</dependency>
9189

gitignore-reader/pom.xml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,12 @@
5252
<scope>test</scope>
5353
</dependency>
5454

55+
<dependency>
56+
<groupId>org.junit-pioneer</groupId>
57+
<artifactId>junit-pioneer</artifactId>
58+
<scope>test</scope>
59+
</dependency>
60+
5561
<dependency>
5662
<groupId>ch.qos.logback</groupId>
5763
<artifactId>logback-classic</artifactId>
@@ -93,6 +99,11 @@
9399
<version>${maven-surefire-plugin.version}</version>
94100
<configuration>
95101
<failIfNoTests>true</failIfNoTests>
102+
<!-- https://junit-pioneer.org/docs/environment-variables/#warnings-for-reflective-access -->
103+
<argLine>
104+
--add-opens java.base/java.util=ALL-UNNAMED
105+
--add-opens java.base/java.lang=ALL-UNNAMED
106+
</argLine>
96107
</configuration>
97108
</plugin>
98109

0 commit comments

Comments
 (0)