Skip to content

Commit b5140cd

Browse files
committed
JUnit 5 cleanup for packages task and util
1 parent 8ae4fe9 commit b5140cd

18 files changed

Lines changed: 154 additions & 193 deletions

authme-core/src/test/java/fr/xephi/authme/task/CleanupTaskTest.java

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
package fr.xephi.authme.task;
22

3-
import org.mockito.quality.Strictness;
4-
import org.mockito.junit.jupiter.MockitoSettings;
5-
import org.mockito.junit.jupiter.MockitoExtension;
6-
import org.junit.jupiter.api.extension.ExtendWith;
73
import ch.jalu.injector.factory.SingletonStore;
84
import fr.xephi.authme.initialization.HasCleanup;
95
import org.junit.jupiter.api.Test;
6+
import org.junit.jupiter.api.extension.ExtendWith;
107
import org.mockito.InjectMocks;
118
import org.mockito.Mock;
9+
import org.mockito.junit.jupiter.MockitoExtension;
1210

1311
import java.util.List;
1412

@@ -21,8 +19,7 @@
2119
* Test for {@link CleanupTask}.
2220
*/
2321
@ExtendWith(MockitoExtension.class)
24-
@MockitoSettings(strictness = Strictness.WARN)
25-
public class CleanupTaskTest {
22+
class CleanupTaskTest {
2623

2724
@InjectMocks
2825
private CleanupTask cleanupTask;
@@ -31,7 +28,7 @@ public class CleanupTaskTest {
3128
private SingletonStore<HasCleanup> hasCleanupStore;
3229

3330
@Test
34-
public void shouldPerformCleanup() {
31+
void shouldPerformCleanup() {
3532
// given
3633
List<HasCleanup> services = asList(mock(HasCleanup.class), mock(HasCleanup.class), mock(HasCleanup.class));
3734
given(hasCleanupStore.retrieveAllOfType()).willReturn(services);
@@ -45,5 +42,3 @@ public void shouldPerformCleanup() {
4542
verify(services.get(2)).performCleanup();
4643
}
4744
}
48-
49-

authme-core/src/test/java/fr/xephi/authme/task/purge/PurgeServiceTest.java

Lines changed: 18 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
package fr.xephi.authme.task.purge;
22

3-
import org.mockito.quality.Strictness;
4-
import org.mockito.junit.jupiter.MockitoSettings;
5-
import org.mockito.junit.jupiter.MockitoExtension;
6-
import org.junit.jupiter.api.extension.ExtendWith;
73
import fr.xephi.authme.ReflectionTestUtils;
84
import fr.xephi.authme.TestHelper;
95
import fr.xephi.authme.datasource.DataSource;
@@ -16,10 +12,11 @@
1612
import org.bukkit.entity.Player;
1713
import org.junit.jupiter.api.BeforeAll;
1814
import org.junit.jupiter.api.Test;
15+
import org.junit.jupiter.api.extension.ExtendWith;
1916
import org.mockito.ArgumentCaptor;
20-
import org.mockito.Captor;
2117
import org.mockito.InjectMocks;
2218
import org.mockito.Mock;
19+
import org.mockito.junit.jupiter.MockitoExtension;
2320

2421
import java.util.Arrays;
2522
import java.util.Calendar;
@@ -29,12 +26,12 @@
2926
import java.util.UUID;
3027

3128
import static com.google.common.collect.Sets.newHashSet;
29+
import static org.hamcrest.MatcherAssert.assertThat;
3230
import static org.hamcrest.Matchers.containsInAnyOrder;
3331
import static org.hamcrest.Matchers.containsString;
3432
import static org.hamcrest.Matchers.equalTo;
3533
import static org.hamcrest.Matchers.greaterThan;
3634
import static org.hamcrest.Matchers.not;
37-
import static org.hamcrest.MatcherAssert.assertThat;
3835
import static org.mockito.ArgumentMatchers.anyCollection;
3936
import static org.mockito.ArgumentMatchers.anyLong;
4037
import static org.mockito.ArgumentMatchers.eq;
@@ -49,8 +46,7 @@
4946
* Test for {@link PurgeService}.
5047
*/
5148
@ExtendWith(MockitoExtension.class)
52-
@MockitoSettings(strictness = Strictness.WARN)
53-
public class PurgeServiceTest {
49+
class PurgeServiceTest {
5450

5551
@InjectMocks
5652
private PurgeService purgeService;
@@ -65,18 +61,14 @@ public class PurgeServiceTest {
6561
private PermissionsManager permissionsManager;
6662
@Mock
6763
private PurgeExecutor executor;
68-
@Captor
69-
private ArgumentCaptor<Long> longCaptor;
70-
@Captor
71-
private ArgumentCaptor<Runnable> purgeTaskCaptor;
7264

7365
@BeforeAll
74-
public static void initLogger() {
66+
static void initLogger() {
7567
TestHelper.setupLogger();
7668
}
7769

7870
@Test
79-
public void shouldNotRunAutoPurge() {
71+
void shouldNotRunAutoPurge() {
8072
// given
8173
given(settings.getProperty(PurgeSettings.USE_AUTO_PURGE)).willReturn(false);
8274
given(settings.getProperty(PurgeSettings.DAYS_BEFORE_REMOVE_PLAYER)).willReturn(60);
@@ -89,7 +81,7 @@ public void shouldNotRunAutoPurge() {
8981
}
9082

9183
@Test
92-
public void shouldNotRunAutoPurgeForInvalidInterval() {
84+
void shouldNotRunAutoPurgeForInvalidInterval() {
9385
// given
9486
given(settings.getProperty(PurgeSettings.USE_AUTO_PURGE)).willReturn(true);
9587
given(settings.getProperty(PurgeSettings.DAYS_BEFORE_REMOVE_PLAYER)).willReturn(0);
@@ -102,7 +94,7 @@ public void shouldNotRunAutoPurgeForInvalidInterval() {
10294
}
10395

10496
@Test
105-
public void shouldRunAutoPurge() {
97+
void shouldRunAutoPurge() {
10698
// given
10799
given(settings.getProperty(PurgeSettings.USE_AUTO_PURGE)).willReturn(true);
108100
given(settings.getProperty(PurgeSettings.DAYS_BEFORE_REMOVE_PLAYER)).willReturn(60);
@@ -113,15 +105,16 @@ public void shouldRunAutoPurge() {
113105
purgeService.runAutoPurge();
114106

115107
// then
116-
verify(dataSource).getRecordsToPurge(longCaptor.capture());
117-
assertCorrectPurgeTimestamp(longCaptor.getValue(), 60);
108+
ArgumentCaptor<Long> captor = ArgumentCaptor.forClass(Long.class);
109+
verify(dataSource).getRecordsToPurge(captor.capture());
110+
assertCorrectPurgeTimestamp(captor.getValue(), 60);
118111
assertThat(Boolean.TRUE, equalTo(
119112
ReflectionTestUtils.getFieldValue(PurgeService.class, purgeService, "isPurging")));
120113
verifyScheduledPurgeTask(null, playerNames);
121114
}
122115

123116
@Test
124-
public void shouldRecognizeNoPlayersToPurge() {
117+
void shouldRecognizeNoPlayersToPurge() {
125118
// given
126119
final long delay = 123012301L;
127120
given(dataSource.getRecordsToPurge(delay)).willReturn(Collections.emptySet());
@@ -138,7 +131,7 @@ public void shouldRecognizeNoPlayersToPurge() {
138131
}
139132

140133
@Test
141-
public void shouldRunPurge() {
134+
void shouldRunPurge() {
142135
// given
143136
final long delay = 1809714L;
144137
Set<String> playerNames = newHashSet("charlie", "delta", "echo", "foxtrot");
@@ -156,7 +149,7 @@ public void shouldRunPurge() {
156149
}
157150

158151
@Test
159-
public void shouldNotRunPurgeIfProcessIsAlreadyRunning() {
152+
void shouldNotRunPurgeIfProcessIsAlreadyRunning() {
160153
// given
161154
purgeService.setPurging(true);
162155
CommandSender sender = mock(CommandSender.class);
@@ -171,7 +164,7 @@ public void shouldNotRunPurgeIfProcessIsAlreadyRunning() {
171164
}
172165

173166
@Test
174-
public void shouldExecutePurgeActions() {
167+
void shouldExecutePurgeActions() {
175168
// given
176169
List<String> names = Arrays.asList("alpha", "bravo", "foxtrot");
177170
List<OfflinePlayer> offlinePlayers = Arrays.asList(
@@ -195,14 +188,13 @@ private void assertCorrectPurgeTimestamp(long timestamp, int configuredDays) {
195188
}
196189

197190
private void verifyScheduledPurgeTask(UUID senderUuid, Set<String> names) {
198-
verify(bukkitService).runTaskTimerAsynchronously(purgeTaskCaptor.capture(), eq(0L), eq(1L));
199-
PurgeTask task = (PurgeTask) purgeTaskCaptor.getValue();
191+
ArgumentCaptor<PurgeTask> captor = ArgumentCaptor.forClass(PurgeTask.class);
192+
verify(bukkitService).runTaskTimerAsynchronously(captor.capture(), eq(0L), eq(1L));
193+
PurgeTask task = captor.getValue();
200194

201195
Object senderInTask = ReflectionTestUtils.getFieldValue(PurgeTask.class, task, "sender");
202196
Set<String> namesInTask = ReflectionTestUtils.getFieldValue(PurgeTask.class, task, "toPurge");
203197
assertThat(senderInTask, equalTo(senderUuid));
204198
assertThat(namesInTask, containsInAnyOrder(names.toArray()));
205199
}
206200
}
207-
208-

authme-core/src/test/java/fr/xephi/authme/task/purge/PurgeTaskTest.java

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
package fr.xephi.authme.task.purge;
22

3-
import org.mockito.quality.Strictness;
4-
import org.mockito.junit.jupiter.MockitoSettings;
5-
import org.mockito.junit.jupiter.MockitoExtension;
6-
import org.junit.jupiter.api.extension.ExtendWith;
73
import fr.xephi.authme.ReflectionTestUtils;
84
import fr.xephi.authme.TestHelper;
95
import fr.xephi.authme.permission.PermissionNode;
@@ -17,10 +13,11 @@
1713
import org.bukkit.entity.Player;
1814
import org.junit.jupiter.api.BeforeAll;
1915
import org.junit.jupiter.api.Test;
16+
import org.junit.jupiter.api.extension.ExtendWith;
2017
import org.mockito.ArgumentCaptor;
2118
import org.mockito.Captor;
2219
import org.mockito.Mock;
23-
import org.mockito.invocation.InvocationOnMock;
20+
import org.mockito.junit.jupiter.MockitoExtension;
2421
import org.mockito.stubbing.Answer;
2522

2623
import java.util.ArrayList;
@@ -32,10 +29,10 @@
3229
import java.util.UUID;
3330

3431
import static com.google.common.collect.Sets.newHashSet;
32+
import static org.hamcrest.MatcherAssert.assertThat;
3533
import static org.hamcrest.Matchers.containsInAnyOrder;
3634
import static org.hamcrest.Matchers.containsString;
3735
import static org.hamcrest.Matchers.empty;
38-
import static org.hamcrest.MatcherAssert.assertThat;
3936
import static org.mockito.ArgumentMatchers.any;
4037
import static org.mockito.ArgumentMatchers.anyString;
4138
import static org.mockito.ArgumentMatchers.eq;
@@ -51,8 +48,7 @@
5148
* Test for {@link PurgeTask}.
5249
*/
5350
@ExtendWith(MockitoExtension.class)
54-
@MockitoSettings(strictness = Strictness.WARN)
55-
public class PurgeTaskTest {
51+
class PurgeTaskTest {
5652

5753
private static final PermissionNode BYPASS_NODE = PlayerStatePermission.BYPASS_PURGE;
5854

@@ -71,12 +67,12 @@ public class PurgeTaskTest {
7167
private ArgumentCaptor<Collection<String>> namesCaptor;
7268

7369
@BeforeAll
74-
public static void initLogger() {
70+
static void initLogger() {
7571
TestHelper.setupLogger();
7672
}
7773

7874
@Test
79-
public void shouldRunTask() {
75+
void shouldRunTask() {
8076
// given
8177
Set<String> names =
8278
newHashSet("alpha", "bravo", "charlie", "delta", "echo", "foxtrot", "golf", "hotel", "india");
@@ -114,8 +110,9 @@ public void shouldRunTask() {
114110
// given (3)
115111
// Third round: no more OfflinePlayer objects, but some names remain
116112
reset(purgeService, permissionsManager);
113+
// TODO LJ given(permissionsManager.hasPermissionOffline(anyString(), eq(BYPASS_NODE))).willReturn(false);
117114
given(permissionsManager.hasPermissionOffline("india", BYPASS_NODE)).willReturn(true);
118-
given(permissionsManager.hasPermissionOffline("foxtrot", BYPASS_NODE)).willReturn(false);
115+
given(permissionsManager.hasPermissionOffline("foxtrot", BYPASS_NODE)).willReturn(false); // TODO LJ ^ instead of above possible?
119116

120117
// when (3)
121118
task.run();
@@ -131,7 +128,7 @@ public void shouldRunTask() {
131128
* #1008: OfflinePlayer#getName may return null.
132129
*/
133130
@Test
134-
public void shouldHandleOfflinePlayerWithNullName() {
131+
void shouldHandleOfflinePlayerWithNullName() {
135132
// given
136133
Set<String> names = newHashSet("name1", "name2");
137134
OfflinePlayer[] players = asArray(
@@ -149,7 +146,7 @@ public void shouldHandleOfflinePlayerWithNullName() {
149146
}
150147

151148
@Test
152-
public void shouldStopTaskAndInformSenderUponCompletion() {
149+
void shouldStopTaskAndInformSenderUponCompletion() {
153150
// given
154151
Set<String> names = newHashSet("name1", "name2");
155152
Player sender = mock(Player.class);
@@ -174,7 +171,7 @@ public void shouldStopTaskAndInformSenderUponCompletion() {
174171
}
175172

176173
@Test
177-
public void shouldStopTaskAndInformConsoleUser() {
174+
void shouldStopTaskAndInformConsoleUser() {
178175
// given
179176
Set<String> names = newHashSet("name1", "name2");
180177
PurgeTask task = new PurgeTask(purgeService, permissionsManager, null, names, new OfflinePlayer[0]);
@@ -239,5 +236,3 @@ private void assertRanPurgeWithNames(String... names) {
239236
}
240237

241238
}
242-
243-

authme-core/src/test/java/fr/xephi/authme/util/ExceptionUtilsTest.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,22 @@
11
package fr.xephi.authme.util;
22

3-
import fr.xephi.authme.ReflectionTestUtils;
43
import org.junit.jupiter.api.Test;
54

65
import java.net.MalformedURLException;
76
import java.util.ConcurrentModificationException;
87

8+
import static org.hamcrest.MatcherAssert.assertThat;
99
import static org.hamcrest.Matchers.equalTo;
1010
import static org.hamcrest.Matchers.nullValue;
1111
import static org.hamcrest.Matchers.sameInstance;
12-
import static org.hamcrest.MatcherAssert.assertThat;
1312

1413
/**
1514
* Test for {@link ExceptionUtils}.
1615
*/
17-
public class ExceptionUtilsTest {
16+
class ExceptionUtilsTest {
1817

1918
@Test
20-
public void shouldFindWantedThrowable() {
19+
void shouldFindWantedThrowable() {
2120
// given
2221
ConcurrentModificationException initialCme = new ConcurrentModificationException();
2322
Throwable th = new Throwable(initialCme);
@@ -38,7 +37,7 @@ public void shouldFindWantedThrowable() {
3837
}
3938

4039
@Test
41-
public void shouldHandleCircularCausesGracefully() {
40+
void shouldHandleCircularCausesGracefully() {
4241
// given
4342
ExceptionWithSettableCause exceptionWithSettableCause = new ExceptionWithSettableCause();
4443
UnsupportedOperationException uoe = new UnsupportedOperationException(exceptionWithSettableCause);
@@ -55,7 +54,7 @@ public void shouldHandleCircularCausesGracefully() {
5554
}
5655

5756
@Test
58-
public void shouldFormatException() {
57+
void shouldFormatException() {
5958
// given
6059
MalformedURLException ex = new MalformedURLException("Unrecognized URL format");
6160

@@ -76,4 +75,3 @@ public synchronized Throwable getCause() {
7675
}
7776
}
7877
}
79-

0 commit comments

Comments
 (0)