mirror of
https://github.com/Sheldan/abstracto.git
synced 2026-04-14 11:48:16 +00:00
[AB-271] fixing tests
This commit is contained in:
@@ -43,7 +43,7 @@ public class UnSetExpRole extends AbstractConditionableCommand {
|
||||
public CompletableFuture<CommandResult> executeAsync(CommandContext commandContext) {
|
||||
ARole role = (ARole) commandContext.getParameters().getParameters().get(0);
|
||||
ARole actualRole = roleManagementService.findRole(role.getId());
|
||||
if(!role.getServer().getId().equals(commandContext.getGuild().getIdLong())) {
|
||||
if(!actualRole.getServer().getId().equals(commandContext.getGuild().getIdLong())) {
|
||||
throw new EntityGuildMismatchException();
|
||||
}
|
||||
// do not check for the existence of the role, because if the role was deleted, users should be able
|
||||
|
||||
@@ -3,6 +3,7 @@ package dev.sheldan.abstracto.experience.command;
|
||||
import dev.sheldan.abstracto.core.command.execution.CommandContext;
|
||||
import dev.sheldan.abstracto.core.command.execution.CommandResult;
|
||||
import dev.sheldan.abstracto.core.models.database.ARole;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import dev.sheldan.abstracto.core.service.management.RoleManagementService;
|
||||
import dev.sheldan.abstracto.core.test.command.CommandConfigValidator;
|
||||
import dev.sheldan.abstracto.core.test.command.CommandTestUtilities;
|
||||
@@ -47,6 +48,8 @@ public class DisableExpForRoleTest {
|
||||
ARole actualRole = Mockito.mock(ARole.class);
|
||||
when(parameterRole.getId()).thenReturn(5L);
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(Arrays.asList(parameterRole));
|
||||
AServer server = Mockito.mock(AServer.class);
|
||||
when(actualRole.getServer()).thenReturn(server);
|
||||
when(roleManagementService.findRole(parameterRole.getId())).thenReturn(actualRole);
|
||||
when(disabledExpRoleManagementService.isExperienceDisabledForRole(actualRole)).thenReturn(value);
|
||||
CommandResult result = testUnit.execute(context);
|
||||
|
||||
@@ -36,6 +36,7 @@ public class DisableExpGainTest {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
AUserInAServer parameterUser = Mockito.mock(AUserInAServer.class);
|
||||
Member member = Mockito.mock(Member.class);
|
||||
when(member.getGuild()).thenReturn(noParameters.getGuild());
|
||||
CommandContext context = CommandTestUtilities.enhanceWithParameters(noParameters, Arrays.asList(member));
|
||||
when(userInServerManagementService.loadOrCreateUser(member)).thenReturn(parameterUser);
|
||||
CommandResult result = testUnit.execute(context);
|
||||
|
||||
@@ -3,6 +3,7 @@ package dev.sheldan.abstracto.experience.command;
|
||||
import dev.sheldan.abstracto.core.command.execution.CommandContext;
|
||||
import dev.sheldan.abstracto.core.command.execution.CommandResult;
|
||||
import dev.sheldan.abstracto.core.models.database.ARole;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import dev.sheldan.abstracto.core.service.management.RoleManagementService;
|
||||
import dev.sheldan.abstracto.core.test.command.CommandConfigValidator;
|
||||
import dev.sheldan.abstracto.core.test.command.CommandTestUtilities;
|
||||
@@ -44,8 +45,10 @@ public class EnableExpForRoleTest {
|
||||
ARole roleParameter = Mockito.mock(ARole.class);
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(Arrays.asList(roleParameter));
|
||||
Long roleId = 8L;
|
||||
when(roleParameter.getId()).thenReturn(roleId);
|
||||
AServer server = Mockito.mock(AServer.class);
|
||||
ARole actualRole = Mockito.mock(ARole.class);
|
||||
when(actualRole.getServer()).thenReturn(server);
|
||||
when(roleParameter.getId()).thenReturn(roleId);
|
||||
when(roleManagementService.findRole(roleId)).thenReturn(actualRole);
|
||||
when(disabledExpRoleManagementService.isExperienceDisabledForRole(actualRole)).thenReturn(value);
|
||||
CommandResult result = testUnit.execute(context);
|
||||
|
||||
@@ -36,6 +36,7 @@ public class EnableExpGainTest {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
AUserInAServer parameterUser = Mockito.mock(AUserInAServer.class);
|
||||
Member member = Mockito.mock(Member.class);
|
||||
when(member.getGuild()).thenReturn(noParameters.getGuild());
|
||||
CommandContext context = CommandTestUtilities.enhanceWithParameters(noParameters, Arrays.asList(member));
|
||||
when(userInServerManagementService.loadOrCreateUser(member)).thenReturn(parameterUser);
|
||||
CommandResult result = testUnit.execute(context);
|
||||
|
||||
@@ -73,6 +73,7 @@ public class RankTest {
|
||||
when(userInServerManagementService.loadOrCreateUser(context.getAuthor())).thenReturn(aUserInAServer);
|
||||
when(userExperienceService.getRankOfUserInServer(aUserInAServer)).thenReturn(leaderBoardEntry);
|
||||
LeaderBoardEntryModel leaderBoardEntryModel = Mockito.mock(LeaderBoardEntryModel.class);
|
||||
when(context.getAuthor().getGuild()).thenReturn(context.getGuild());
|
||||
when(converter.fromLeaderBoardEntry(Arrays.asList(leaderBoardEntry))).thenReturn(CompletableFuture.completedFuture(Arrays.asList(leaderBoardEntryModel)));
|
||||
when(self.renderAndSendRank(eq(context), any(RankModel.class), eq(leaderBoardEntryModel))).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(context);
|
||||
|
||||
@@ -3,6 +3,7 @@ package dev.sheldan.abstracto.experience.command;
|
||||
import dev.sheldan.abstracto.core.command.execution.CommandContext;
|
||||
import dev.sheldan.abstracto.core.command.execution.CommandResult;
|
||||
import dev.sheldan.abstracto.core.models.database.ARole;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import dev.sheldan.abstracto.core.service.management.RoleManagementService;
|
||||
import dev.sheldan.abstracto.core.test.command.CommandConfigValidator;
|
||||
import dev.sheldan.abstracto.core.test.command.CommandTestUtilities;
|
||||
@@ -46,6 +47,8 @@ public class UnSetExpRoleTest {
|
||||
CommandContext context = CommandTestUtilities.enhanceWithParameters(noParameters, Arrays.asList(changedRole));
|
||||
when(context.getChannel().getIdLong()).thenReturn(CHANNEL_ID);
|
||||
ARole actualRole = Mockito.mock(ARole.class);
|
||||
AServer server = Mockito.mock(AServer.class);
|
||||
when(actualRole.getServer()).thenReturn(server);
|
||||
when(roleManagementService.findRole(changedRole.getId())).thenReturn(actualRole);
|
||||
when(experienceRoleManagementService.getRoleInServerOptional(actualRole)).thenReturn(Optional.of(Mockito.mock(AExperienceRole.class)));
|
||||
when(experienceRoleService.unsetRoles(actualRole, CHANNEL_ID)).thenReturn(CompletableFuture.completedFuture(null));
|
||||
|
||||
@@ -47,6 +47,7 @@ public class KickTest {
|
||||
@Test
|
||||
public void testKickMemberWithoutReason() {
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(memberToKick));
|
||||
when(memberToKick.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(parameters.getGuild().getIdLong()).thenReturn(SERVER_ID);
|
||||
when(templateService.renderSimpleTemplate(Kick.KICK_DEFAULT_REASON_TEMPLATE, SERVER_ID)).thenReturn(REASON);
|
||||
when(kickService.kickMember(eq(memberToKick), eq(REASON), logModelArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
@@ -62,6 +63,7 @@ public class KickTest {
|
||||
public void testKickMemberWithReason() {
|
||||
String customReason = "reason2";
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(memberToKick, customReason));
|
||||
when(memberToKick.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(kickService.kickMember(eq(memberToKick), eq(customReason), logModelArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(parameters);
|
||||
KickLogModel usedLogModel = logModelArgumentCaptor.getValue();
|
||||
|
||||
@@ -43,6 +43,7 @@ public class PurgeTest {
|
||||
Member messageAuthor = Mockito.mock(Member.class);
|
||||
Integer count = 10;
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(count, messageAuthor));
|
||||
when(messageAuthor.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(purgeService.purgeMessagesInChannel(count, parameters.getChannel(), parameters.getMessage(), messageAuthor)).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(parameters);
|
||||
Assert.assertEquals(ResultState.SELF_DESTRUCT, result.join().getResult());
|
||||
|
||||
@@ -51,6 +51,7 @@ public class SlowModeTest {
|
||||
String duration = "off";
|
||||
TextChannel channel = Mockito.mock(TextChannel.class);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(duration, channel));
|
||||
when(channel.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(slowModeService.setSlowMode(channel, Duration.ZERO)).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(parameters);
|
||||
CommandTestUtilities.checkSuccessfulCompletionAsync(result);
|
||||
@@ -61,6 +62,7 @@ public class SlowModeTest {
|
||||
String duration = "1m";
|
||||
TextChannel channel = Mockito.mock(TextChannel.class);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(duration, channel));
|
||||
when(channel.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(slowModeService.setSlowMode(channel, Duration.ofMinutes(1))).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(parameters);
|
||||
CommandTestUtilities.checkSuccessfulCompletionAsync(result);
|
||||
|
||||
@@ -37,6 +37,7 @@ public class UserNoteCommandTest {
|
||||
AUserInAServer userInAServer = Mockito.mock(AUserInAServer.class);
|
||||
String note = "note";
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(member, note));
|
||||
when(member.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(userInServerManagementService.loadOrCreateUser(member)).thenReturn(userInAServer);
|
||||
CommandResult result = testUnit.execute(parameters);
|
||||
verify(userNoteManagementService, times(1)).createUserNote(userInAServer, note);
|
||||
|
||||
@@ -55,6 +55,7 @@ public class UserNotesTest {
|
||||
public void testExecuteUserNotesCommandForMember() {
|
||||
Member member = Mockito.mock(Member.class);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(member));
|
||||
when(member.getGuild()).thenReturn(parameters.getGuild());
|
||||
AUserInAServer userNoteUser = Mockito.mock(AUserInAServer.class);
|
||||
when(userInServerManagementService.loadOrCreateUser(member)).thenReturn(userNoteUser);
|
||||
UserNote firstNote = Mockito.mock(UserNote.class);
|
||||
|
||||
@@ -42,6 +42,7 @@ public class WarnTest {
|
||||
Member warnedMember = Mockito.mock(Member.class);
|
||||
String reason = "reason";
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(warnedMember, reason));
|
||||
when(warnedMember.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(parameters.getGuild().getIdLong()).thenReturn(SERVER_ID);
|
||||
when(templateService.renderSimpleTemplate(Warn.WARN_DEFAULT_REASON_TEMPLATE, SERVER_ID)).thenReturn(DEFAULT_REASON);
|
||||
when(warnService.warnUserWithLog(parameterCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
@@ -57,6 +58,7 @@ public class WarnTest {
|
||||
public void testExecuteWarnCommandWithDefaultReason() {
|
||||
Member warnedMember = Mockito.mock(Member.class);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(warnedMember));
|
||||
when(warnedMember.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(parameters.getGuild().getIdLong()).thenReturn(SERVER_ID);
|
||||
when(templateService.renderSimpleTemplate(Warn.WARN_DEFAULT_REASON_TEMPLATE, SERVER_ID)).thenReturn(DEFAULT_REASON);
|
||||
when(warnService.warnUserWithLog(parameterCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
|
||||
@@ -100,6 +100,7 @@ public class WarningsTest {
|
||||
public void testExecuteWarningsForMember(){
|
||||
Member member = Mockito.mock(Member.class);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(member));
|
||||
when(member.getGuild()).thenReturn(parameters.getGuild());
|
||||
AUserInAServer warnedUser = Mockito.mock(AUserInAServer.class);
|
||||
Warning firstWarning = Mockito.mock(Warning.class);
|
||||
WarnEntry firstModelWarning = Mockito.mock(WarnEntry.class);
|
||||
|
||||
@@ -43,6 +43,7 @@ public class MuteTest {
|
||||
String reason = "reason";
|
||||
Duration duration = Duration.ofMinutes(1);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(mutedMember, duration, reason));
|
||||
when(mutedMember.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(muteService.muteMemberWithLog(muteLogArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(parameters);
|
||||
CommandTestUtilities.checkSuccessfulCompletionAsync(result);
|
||||
|
||||
@@ -45,6 +45,7 @@ public class SetMuteRoleTest {
|
||||
ARole aRole = Mockito.mock(ARole.class);
|
||||
when(roleManagementService.findRole(roleId)).thenReturn(aRole);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(role));
|
||||
when(role.getGuild()).thenReturn(parameters.getGuild());
|
||||
AServer server = Mockito.mock(AServer.class);
|
||||
when(serverManagementService.loadServer(parameters.getGuild())).thenReturn(server);
|
||||
CommandResult result = testUnit.execute(parameters);
|
||||
|
||||
@@ -44,6 +44,7 @@ public class UnMuteTest {
|
||||
@Test
|
||||
public void testUnMuteCommand() {
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(memberToUnMute));
|
||||
when(memberToUnMute.getGuild()).thenReturn(parameters.getGuild());
|
||||
AUserInAServer user = Mockito.mock(AUserInAServer.class);
|
||||
when(userInServerManagementService.loadOrCreateUser(memberToUnMute)).thenReturn(user);
|
||||
when(muteService.unMuteUser(user)).thenReturn(CompletableFuture.completedFuture(null));
|
||||
@@ -54,6 +55,7 @@ public class UnMuteTest {
|
||||
@Test(expected = NoMuteFoundException.class)
|
||||
public void testUnMuteCommandWithoutExistingMute() {
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(memberToUnMute));
|
||||
when(memberToUnMute.getGuild()).thenReturn(parameters.getGuild());
|
||||
AUserInAServer user = Mockito.mock(AUserInAServer.class);
|
||||
when(userInServerManagementService.loadOrCreateUser(memberToUnMute)).thenReturn(user);
|
||||
when(muteService.unMuteUser(user)).thenThrow(new NoMuteFoundException());
|
||||
|
||||
@@ -33,6 +33,7 @@ public class ShowAvatarTest {
|
||||
@Test
|
||||
public void executeWithoutParameter() {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
when(noParameters.getAuthor().getGuild()).thenReturn(noParameters.getGuild());
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(noParameters);
|
||||
verify(channelService, times(1)).sendEmbedTemplateInTextChannelList(eq(ShowAvatar.SHOW_AVATAR_RESPONSE_TEMPLATE), argumentCaptor.capture(), eq(noParameters.getChannel()));
|
||||
ShowAvatarModel usedModel = argumentCaptor.getValue();
|
||||
@@ -44,6 +45,7 @@ public class ShowAvatarTest {
|
||||
public void executeWithParameter() {
|
||||
Member target = Mockito.mock(Member.class);
|
||||
CommandContext noParameters = CommandTestUtilities.getWithParameters(Arrays.asList(target));
|
||||
when(target.getGuild()).thenReturn(noParameters.getGuild());
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(noParameters);
|
||||
verify(channelService, times(1)).sendEmbedTemplateInTextChannelList(eq(ShowAvatar.SHOW_AVATAR_RESPONSE_TEMPLATE), argumentCaptor.capture(), eq(noParameters.getChannel()));
|
||||
ShowAvatarModel usedModel = argumentCaptor.getValue();
|
||||
|
||||
@@ -41,6 +41,7 @@ public class UserInfoTest {
|
||||
@Test
|
||||
public void executeWithoutParameterAndLoadedMember() {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
when(noParameters.getAuthor().getGuild()).thenReturn(noParameters.getGuild());
|
||||
when(noParameters.getAuthor().hasTimeJoined()).thenReturn(true);
|
||||
when(self.sendResponse(eq(noParameters),any(UserInfoModel.class))).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(noParameters);
|
||||
@@ -55,7 +56,7 @@ public class UserInfoTest {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
when(noParameters.getAuthor().hasTimeJoined()).thenReturn(false);
|
||||
Member loadedAuthor = Mockito.mock(Member.class);
|
||||
when(noParameters.getAuthor().getGuild()).thenReturn(Mockito.mock(Guild.class));
|
||||
when(noParameters.getAuthor().getGuild()).thenReturn(noParameters.getGuild());
|
||||
when(memberService.forceReloadMember(noParameters.getAuthor())).thenReturn(CompletableFuture.completedFuture(loadedAuthor));
|
||||
when(self.sendResponse(eq(noParameters), modelArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(noParameters);
|
||||
@@ -69,6 +70,7 @@ public class UserInfoTest {
|
||||
Member member = Mockito.mock(Member.class);
|
||||
when(member.hasTimeJoined()).thenReturn(true);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(member));
|
||||
when(member.getGuild()).thenReturn(parameters.getGuild());
|
||||
when(self.sendResponse(eq(parameters), modelArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(parameters);
|
||||
UserInfoModel usedModel = modelArgumentCaptor.getValue();
|
||||
@@ -81,8 +83,8 @@ public class UserInfoTest {
|
||||
Member member = Mockito.mock(Member.class);
|
||||
when(member.hasTimeJoined()).thenReturn(false);
|
||||
CommandContext parameters = CommandTestUtilities.getWithParameters(Arrays.asList(member));
|
||||
when(member.getGuild()).thenReturn(parameters.getGuild());
|
||||
Member loadedAuthor = Mockito.mock(Member.class);
|
||||
when(member.getGuild()).thenReturn(Mockito.mock(Guild.class));
|
||||
when(memberService.forceReloadMember(member)).thenReturn(CompletableFuture.completedFuture(loadedAuthor));
|
||||
when(self.sendResponse(eq(parameters), modelArgumentCaptor.capture())).thenReturn(CompletableFuture.completedFuture(null));
|
||||
CompletableFuture<CommandResult> result = testUnit.executeAsync(parameters);
|
||||
|
||||
@@ -8,8 +8,6 @@ import dev.sheldan.abstracto.core.command.service.CommandCoolDownService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.time.Duration;
|
||||
|
||||
@Component
|
||||
public class CommandCoolDownCondition implements CommandCondition {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user