Port thread safety/performance optimizations from #1992
This commit is contained in:
@@ -11,6 +11,7 @@ import org.mockito.InjectMocks;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
|
||||
import static fr.xephi.authme.service.BukkitServiceTestHelper.setBukkitServiceToRunTaskAsynchronously;
|
||||
import static fr.xephi.authme.service.BukkitServiceTestHelper.setBukkitServiceToRunTaskOptionallyAsync;
|
||||
import static java.util.Arrays.asList;
|
||||
import static java.util.Collections.singletonList;
|
||||
@@ -45,7 +46,7 @@ public class PurgePlayerCommandTest {
|
||||
String name = "Bobby";
|
||||
given(dataSource.isAuthAvailable(name)).willReturn(true);
|
||||
CommandSender sender = mock(CommandSender.class);
|
||||
setBukkitServiceToRunTaskOptionallyAsync(bukkitService);
|
||||
setBukkitServiceToRunTaskAsynchronously(bukkitService);
|
||||
|
||||
// when
|
||||
command.executeCommand(sender, singletonList(name));
|
||||
@@ -63,7 +64,7 @@ public class PurgePlayerCommandTest {
|
||||
OfflinePlayer player = mock(OfflinePlayer.class);
|
||||
given(bukkitService.getOfflinePlayer(name)).willReturn(player);
|
||||
CommandSender sender = mock(CommandSender.class);
|
||||
setBukkitServiceToRunTaskOptionallyAsync(bukkitService);
|
||||
setBukkitServiceToRunTaskAsynchronously(bukkitService);
|
||||
|
||||
// when
|
||||
command.executeCommand(sender, singletonList(name));
|
||||
@@ -80,7 +81,7 @@ public class PurgePlayerCommandTest {
|
||||
OfflinePlayer player = mock(OfflinePlayer.class);
|
||||
given(bukkitService.getOfflinePlayer(name)).willReturn(player);
|
||||
CommandSender sender = mock(CommandSender.class);
|
||||
setBukkitServiceToRunTaskOptionallyAsync(bukkitService);
|
||||
setBukkitServiceToRunTaskAsynchronously(bukkitService);
|
||||
|
||||
// when
|
||||
command.executeCommand(sender, asList(name, "force"));
|
||||
|
||||
@@ -646,7 +646,7 @@ public class PlayerListenerTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldNotInterfereWithUnrestrictedUser() {
|
||||
public void shouldNotInterfereWithUnrestrictedUser() throws FailedVerificationException {
|
||||
// given
|
||||
String name = "Player01";
|
||||
Player player = mockPlayerWithName(name);
|
||||
@@ -658,12 +658,13 @@ public class PlayerListenerTest {
|
||||
|
||||
// then
|
||||
verify(validationService).isUnrestricted(name);
|
||||
verify(onJoinVerifier).checkSingleSession(name);
|
||||
verifyNoModifyingCalls(event);
|
||||
verifyNoInteractions(onJoinVerifier);
|
||||
verifyNoMoreInteractions(onJoinVerifier);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldStopHandlingForFullServer() {
|
||||
public void shouldStopHandlingForFullServer() throws FailedVerificationException {
|
||||
// given
|
||||
String name = "someone";
|
||||
Player player = mockPlayerWithName(name);
|
||||
@@ -676,12 +677,14 @@ public class PlayerListenerTest {
|
||||
|
||||
// then
|
||||
verify(validationService).isUnrestricted(name);
|
||||
verify(onJoinVerifier, only()).refusePlayerForFullServer(event);
|
||||
verify(onJoinVerifier).checkSingleSession(name);
|
||||
verify(onJoinVerifier).refusePlayerForFullServer(event);
|
||||
verifyNoMoreInteractions(onJoinVerifier);
|
||||
verifyNoModifyingCalls(event);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldStopHandlingEventForBadResult() {
|
||||
public void shouldStopHandlingEventForBadResult() throws FailedVerificationException {
|
||||
// given
|
||||
String name = "someone";
|
||||
Player player = mockPlayerWithName(name);
|
||||
@@ -696,7 +699,8 @@ public class PlayerListenerTest {
|
||||
|
||||
// then
|
||||
verify(validationService).isUnrestricted(name);
|
||||
verify(onJoinVerifier, only()).refusePlayerForFullServer(event);
|
||||
verify(onJoinVerifier).checkSingleSession(name);
|
||||
verify(onJoinVerifier).refusePlayerForFullServer(event);
|
||||
verifyNoModifyingCalls(event);
|
||||
}
|
||||
|
||||
@@ -715,14 +719,13 @@ public class PlayerListenerTest {
|
||||
|
||||
// then
|
||||
verify(validationService).isUnrestricted(name);
|
||||
verify(onJoinVerifier).checkSingleSession(name);
|
||||
verify(onJoinVerifier).checkIsValidName(name);
|
||||
verifyNoInteractions(dataSource);
|
||||
verifyNoModifyingCalls(preLoginEvent);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldKickPreLoginLowestUnresolvedHostname() throws FailedVerificationException {
|
||||
public void shouldKickPreLoginLowestUnresolvedHostname() {
|
||||
// given
|
||||
String name = "someone";
|
||||
UUID uniqueId = UUID.fromString("753493c9-33ba-4a4a-bf61-1bce9d3c9a71");
|
||||
|
||||
@@ -20,6 +20,7 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import static fr.xephi.authme.service.BukkitServiceTestHelper.setBukkitServiceToScheduleSyncDelayedTaskWithDelay;
|
||||
import static fr.xephi.authme.service.BukkitServiceTestHelper.setBukkitServiceToScheduleSyncTaskFromOptionallyAsyncTask;
|
||||
import static org.hamcrest.Matchers.equalTo;
|
||||
import static org.junit.Assert.assertThat;
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
@@ -160,6 +161,7 @@ public class AntiBotServiceTest {
|
||||
given(bukkitService.getOnlinePlayers()).willReturn(players);
|
||||
given(permissionsManager.hasPermission(players.get(0), AdminPermission.ANTIBOT_MESSAGES)).willReturn(false);
|
||||
given(permissionsManager.hasPermission(players.get(1), AdminPermission.ANTIBOT_MESSAGES)).willReturn(true);
|
||||
setBukkitServiceToScheduleSyncTaskFromOptionallyAsyncTask(bukkitService);
|
||||
|
||||
// when
|
||||
antiBotService.overrideAntiBotStatus(true);
|
||||
|
||||
@@ -189,7 +189,7 @@ public class PurgeServiceTest {
|
||||
|
||||
private void verifyScheduledPurgeTask(UUID senderUuid, Set<String> names) {
|
||||
ArgumentCaptor<PurgeTask> captor = ArgumentCaptor.forClass(PurgeTask.class);
|
||||
verify(bukkitService).runTaskTimer(captor.capture(), eq(0L), eq(1L));
|
||||
verify(bukkitService).runTaskTimerAsynchronously(captor.capture(), eq(0L), eq(1L));
|
||||
PurgeTask task = captor.getValue();
|
||||
|
||||
Object senderInTask = ReflectionTestUtils.getFieldValue(PurgeTask.class, task, "sender");
|
||||
|
||||
Reference in New Issue
Block a user