mirror of
https://github.com/Sheldan/abstracto.git
synced 2026-04-14 11:48:16 +00:00
added tests for utility module
refactored various commands and services optimized code for message embeds removed emoteUtils completely and moved to service removed suggestion validation, because its now done via feature config fixed regex for discord links changed template to handle the case in which a member which suggested it originally left the server added suggestion update exception in cases the message to edit, does not qualify as a suggestion added check to not allow cross server quoting and added test case refactored mocking for jda objects
This commit is contained in:
@@ -23,17 +23,17 @@ public abstract class ExperienceRelatedTest {
|
||||
return experiences;
|
||||
}
|
||||
|
||||
protected AUserExperience getUserExperienceObject(AServer server, int i) {
|
||||
AUserInAServer userObject = MockUtils.getUserObject((long)i, server);
|
||||
protected AUserExperience getUserExperienceObject(AServer server, long i) {
|
||||
AUserInAServer userObject = MockUtils.getUserObject(i, server);
|
||||
AExperienceLevel level = AExperienceLevel
|
||||
.builder()
|
||||
.level(i)
|
||||
.experienceNeeded((long) i * 100)
|
||||
.level((int)i)
|
||||
.experienceNeeded(i * 100)
|
||||
.build();
|
||||
return AUserExperience
|
||||
.builder()
|
||||
.user(userObject)
|
||||
.experience((long) i)
|
||||
.experience(i)
|
||||
.currentLevel(level)
|
||||
.build();
|
||||
}
|
||||
|
||||
@@ -8,7 +8,6 @@ import dev.sheldan.abstracto.core.models.database.ARole;
|
||||
import dev.sheldan.abstracto.experience.service.management.DisabledExpRoleManagementService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -28,17 +27,14 @@ public class DisableExpForRoleTest {
|
||||
@Mock
|
||||
private DisabledExpRoleManagementService disabledExpRoleManagementService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test(expected = InsufficientParameters.class)
|
||||
public void testTooLittleParameters() {
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testIncorrectParameterType() {
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -53,7 +49,7 @@ public class DisableExpForRoleTest {
|
||||
|
||||
private void executeDisableExpForRoleTest(boolean value, int wantedNumberOfInvocations) {
|
||||
ARole disabledRole = MockUtils.getRole(1L, MockUtils.getServer());
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(jda, Arrays.asList(disabledRole));
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(Arrays.asList(disabledRole));
|
||||
when(disabledExpRoleManagementService.isExperienceDisabledForRole(disabledRole)).thenReturn(value);
|
||||
CommandResult result = testUnit.execute(context);
|
||||
verify(disabledExpRoleManagementService, times(wantedNumberOfInvocations)).setRoleToBeDisabledForExp(disabledRole);
|
||||
|
||||
@@ -10,11 +10,11 @@ import dev.sheldan.abstracto.experience.service.AUserExperienceService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.api.entities.Member;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
|
||||
import static org.mockito.Mockito.*;
|
||||
@@ -33,24 +33,21 @@ public class DisableExpGainTest {
|
||||
@Mock
|
||||
private UserInServerManagementService userInServerManagementService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test(expected = InsufficientParameters.class)
|
||||
public void testTooLittleParameters() {
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testIncorrectParameterType() {
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDisableExpForMember() {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
AUserInAServer parameterUser = MockUtils.getUserObject(4L, noParameters.getUserInitiatedContext().getServer());
|
||||
Member member = MockUtils.getMockedMember(noParameters.getUserInitiatedContext().getServer(), parameterUser, jda);
|
||||
Member member = Mockito.mock(Member.class);
|
||||
CommandContext context = CommandTestUtilities.enhanceWithParameters(noParameters, Arrays.asList(member));
|
||||
when(userInServerManagementService.loadUser(member)).thenReturn(parameterUser);
|
||||
CommandResult result = testUnit.execute(context);
|
||||
|
||||
@@ -8,7 +8,6 @@ import dev.sheldan.abstracto.core.models.database.ARole;
|
||||
import dev.sheldan.abstracto.experience.service.management.DisabledExpRoleManagementService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -28,17 +27,14 @@ public class EnableExpForRoleTest {
|
||||
@Mock
|
||||
private DisabledExpRoleManagementService disabledExpRoleManagementService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test(expected = InsufficientParameters.class)
|
||||
public void testTooLittleParameters() {
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testIncorrectParameterType() {
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -53,7 +49,7 @@ public class EnableExpForRoleTest {
|
||||
|
||||
private void executeEnableExpForRoleTest(boolean value, int wantedNumberOfInvocations) {
|
||||
ARole disabledRole = MockUtils.getRole(1L, MockUtils.getServer());
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(jda, Arrays.asList(disabledRole));
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(Arrays.asList(disabledRole));
|
||||
when(disabledExpRoleManagementService.isExperienceDisabledForRole(disabledRole)).thenReturn(value);
|
||||
CommandResult result = testUnit.execute(context);
|
||||
verify(disabledExpRoleManagementService, times(wantedNumberOfInvocations)).removeRoleToBeDisabledForExp(disabledRole);
|
||||
|
||||
@@ -10,11 +10,11 @@ import dev.sheldan.abstracto.experience.service.AUserExperienceService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.api.entities.Member;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
|
||||
import java.util.Arrays;
|
||||
@@ -33,24 +33,21 @@ public class EnableExpGainTest {
|
||||
@Mock
|
||||
private UserInServerManagementService userInServerManagementService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test(expected = InsufficientParameters.class)
|
||||
public void testTooLittleParameters() {
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testIncorrectParameterType() {
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testEnableExpForMember() {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
AUserInAServer parameterUser = MockUtils.getUserObject(4L, noParameters.getUserInitiatedContext().getServer());
|
||||
Member member = MockUtils.getMockedMember(noParameters.getUserInitiatedContext().getServer(), parameterUser, jda);
|
||||
Member member = Mockito.mock(Member.class);
|
||||
CommandContext context = CommandTestUtilities.enhanceWithParameters(noParameters, Arrays.asList(member));
|
||||
when(userInServerManagementService.loadUser(member)).thenReturn(parameterUser);
|
||||
CommandResult result = testUnit.execute(context);
|
||||
|
||||
@@ -6,7 +6,6 @@ import dev.sheldan.abstracto.core.command.execution.CommandContext;
|
||||
import dev.sheldan.abstracto.core.command.execution.CommandResult;
|
||||
import dev.sheldan.abstracto.core.service.ConfigService;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -26,23 +25,20 @@ public class ExpScaleTest {
|
||||
@Mock
|
||||
private ConfigService configService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test(expected = InsufficientParameters.class)
|
||||
public void testTooLittleParameters() {
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testIncorrectParameterType() {
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSetExpScaleForGuild() {
|
||||
double newScale = 4.5;
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(jda, Arrays.asList(newScale));
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(Arrays.asList(newScale));
|
||||
CommandResult result = testUnit.execute(context);
|
||||
CommandTestUtilities.checkSuccessfulCompletion(result);
|
||||
verify(configService, times(1)).setDoubleValue(ExpScale.EXP_MULTIPLIER_KEY, context.getGuild().getIdLong(), newScale);
|
||||
|
||||
@@ -13,7 +13,6 @@ import dev.sheldan.abstracto.experience.service.AUserExperienceService;
|
||||
import dev.sheldan.abstracto.templating.model.MessageToSend;
|
||||
import dev.sheldan.abstracto.templating.service.TemplateService;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -43,22 +42,19 @@ public class LeaderBoardCommandTest {
|
||||
@Mock
|
||||
private LeaderBoardModelConverter converter;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testIncorrectParameterType() {
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLeaderBoardWithNoParameter() {
|
||||
testLeaderBoardCommand(CommandTestUtilities.getNoParameters(jda), 1);
|
||||
testLeaderBoardCommand(CommandTestUtilities.getNoParameters(), 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLeaderBoardWithPageParameter() {
|
||||
testLeaderBoardCommand(CommandTestUtilities.getWithParameters(jda, Arrays.asList(5)), 5);
|
||||
testLeaderBoardCommand(CommandTestUtilities.getWithParameters(Arrays.asList(5)), 5);
|
||||
}
|
||||
|
||||
private void testLeaderBoardCommand(CommandContext context, int expectedPage) {
|
||||
|
||||
@@ -11,7 +11,6 @@ import dev.sheldan.abstracto.experience.models.templates.DisabledExperienceRoles
|
||||
import dev.sheldan.abstracto.experience.service.management.DisabledExpRoleManagementService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -38,12 +37,9 @@ public class ListDisabledExperienceRolesTest {
|
||||
@Mock
|
||||
private ChannelService channelService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test
|
||||
public void testCommandExecutionNoRolesFound() {
|
||||
CommandContext context = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext context = CommandTestUtilities.getNoParameters();
|
||||
AServer server = context.getUserInitiatedContext().getServer();
|
||||
when(disabledExpRoleManagementService.getDisabledRolesForServer(server)).thenReturn(new ArrayList<>());
|
||||
CommandResult result = testUnit.execute(context);
|
||||
@@ -55,7 +51,7 @@ public class ListDisabledExperienceRolesTest {
|
||||
|
||||
@Test
|
||||
public void testCommandExecutionRolesFound() {
|
||||
CommandContext context = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext context = CommandTestUtilities.getNoParameters();
|
||||
AServer server = context.getUserInitiatedContext().getServer();
|
||||
ADisabledExpRole disabledExpRole1 = ADisabledExpRole.builder().role(MockUtils.getRole(4L, server)).build();
|
||||
ADisabledExpRole disabledExpRole2 = ADisabledExpRole.builder().role(MockUtils.getRole(6L, server)).build();
|
||||
|
||||
@@ -14,7 +14,6 @@ import dev.sheldan.abstracto.experience.service.ExperienceLevelService;
|
||||
import dev.sheldan.abstracto.templating.model.MessageToSend;
|
||||
import dev.sheldan.abstracto.templating.service.TemplateService;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -45,14 +44,11 @@ public class RankTest {
|
||||
@Mock
|
||||
private ChannelService channelService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test
|
||||
public void testRankExecution() {
|
||||
int currentLevelValue = 50;
|
||||
long currentExperience = 50L;
|
||||
CommandContext context = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext context = CommandTestUtilities.getNoParameters();
|
||||
AExperienceLevel currentLevel = AExperienceLevel.builder().level(currentLevelValue).build();
|
||||
AUserExperience aUserExperience = AUserExperience.builder().experience(currentExperience).currentLevel(currentLevel).build();
|
||||
LeaderBoardEntry leaderBoardEntry = LeaderBoardEntry.builder().experience(aUserExperience).build();
|
||||
|
||||
@@ -10,7 +10,6 @@ import dev.sheldan.abstracto.core.service.RoleService;
|
||||
import dev.sheldan.abstracto.experience.service.ExperienceRoleService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -33,34 +32,31 @@ public class SetExpRoleTest {
|
||||
@Mock
|
||||
private RoleService roleService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test(expected = InsufficientParameters.class)
|
||||
public void testTooLittleParameters() {
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test(expected = InsufficientParameters.class)
|
||||
public void testRoleMissing() {
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(jda, Arrays.asList(4));
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(Arrays.asList(4));
|
||||
testUnit.execute(context);
|
||||
}
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testIncorrectParameterType() {
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testLevelProvidedButNotRole() {
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(jda, Arrays.asList(4, ""));
|
||||
CommandContext context = CommandTestUtilities.getWithParameters(Arrays.asList(4, ""));
|
||||
testUnit.execute(context);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setExpRole() {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
ARole changedRole = MockUtils.getRole(4L, noParameters.getUserInitiatedContext().getServer());
|
||||
Integer levelToSetTo = 4;
|
||||
CommandContext context = CommandTestUtilities.enhanceWithParameters(noParameters, Arrays.asList(levelToSetTo, changedRole));
|
||||
@@ -72,7 +68,7 @@ public class SetExpRoleTest {
|
||||
|
||||
@Test(expected = RoleNotFoundInGuildException.class)
|
||||
public void setExpRoleNotExistingOnServer() {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
ARole changedRole = MockUtils.getRole(4L, noParameters.getUserInitiatedContext().getServer());
|
||||
Integer levelToSetTo = 4;
|
||||
CommandContext context = CommandTestUtilities.enhanceWithParameters(noParameters, Arrays.asList(levelToSetTo, changedRole));
|
||||
|
||||
@@ -6,7 +6,6 @@ import dev.sheldan.abstracto.core.models.database.AChannel;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import dev.sheldan.abstracto.experience.service.AUserExperienceService;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -24,12 +23,9 @@ public class SyncRolesTest {
|
||||
@Mock
|
||||
private AUserExperienceService userExperienceService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test
|
||||
public void executeCommand() {
|
||||
CommandContext context = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext context = CommandTestUtilities.getNoParameters();
|
||||
CommandResult result = testUnit.execute(context);
|
||||
AServer server = context.getUserInitiatedContext().getServer();
|
||||
AChannel channel = context.getUserInitiatedContext().getChannel();
|
||||
|
||||
@@ -8,7 +8,6 @@ import dev.sheldan.abstracto.core.models.database.ARole;
|
||||
import dev.sheldan.abstracto.experience.service.ExperienceRoleService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import dev.sheldan.abstracto.test.command.CommandTestUtilities;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -29,22 +28,19 @@ public class UnSetExpRoleTest {
|
||||
@Mock
|
||||
private ExperienceRoleService experienceRoleService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test(expected = InsufficientParameters.class)
|
||||
public void testTooLittleParameters() {
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeNoParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test(expected = IncorrectParameter.class)
|
||||
public void testIncorrectParameterType() {
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit, jda);
|
||||
CommandTestUtilities.executeWrongParametersTest(testUnit);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setUnSetExpRole() {
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters(jda);
|
||||
CommandContext noParameters = CommandTestUtilities.getNoParameters();
|
||||
ARole changedRole = MockUtils.getRole(4L, noParameters.getUserInitiatedContext().getServer());
|
||||
CommandContext context = CommandTestUtilities.enhanceWithParameters(noParameters, Arrays.asList(changedRole));
|
||||
CommandResult result = testUnit.execute(context);
|
||||
|
||||
@@ -8,13 +8,14 @@ import dev.sheldan.abstracto.experience.models.LeaderBoardEntry;
|
||||
import dev.sheldan.abstracto.experience.models.database.AUserExperience;
|
||||
import dev.sheldan.abstracto.experience.models.templates.LeaderBoardEntryModel;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import net.dv8tion.jda.internal.entities.MemberImpl;
|
||||
import net.dv8tion.jda.api.entities.Member;
|
||||
import net.dv8tion.jda.api.entities.User;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
|
||||
import java.util.Arrays;
|
||||
@@ -31,9 +32,6 @@ public class LeaderBoardModelConverterTest extends ExperienceRelatedTest {
|
||||
@Mock
|
||||
private BotService botService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test
|
||||
public void testFromLeaderBoard() {
|
||||
AServer server = MockUtils.getServer();
|
||||
@@ -58,9 +56,13 @@ public class LeaderBoardModelConverterTest extends ExperienceRelatedTest {
|
||||
@Test
|
||||
public void testFromEntry() {
|
||||
AServer server = MockUtils.getServer();
|
||||
AUserExperience experience = getUserExperienceObject(server, 3);
|
||||
Long userId = 3L;
|
||||
AUserExperience experience = getUserExperienceObject(server, userId);
|
||||
LeaderBoardEntry entry = LeaderBoardEntry.builder().experience(experience).rank(1).build();
|
||||
MemberImpl member = MockUtils.getMockedMember(server, experience.getUser(), jda);
|
||||
Member member = Mockito.mock(Member.class);
|
||||
User user = Mockito.mock(User.class);
|
||||
when(user.getIdLong()).thenReturn(userId);
|
||||
when(member.getUser()).thenReturn(user);
|
||||
when(botService.getMemberInServer(server.getId(), experience.getUser().getUserReference().getId())).thenReturn(member);
|
||||
LeaderBoardEntryModel leaderBoardEntryModel = testUnit.fromLeaderBoardEntry(entry);
|
||||
Assert.assertEquals(1, leaderBoardEntryModel.getRank().intValue());
|
||||
|
||||
@@ -6,14 +6,13 @@ import dev.sheldan.abstracto.core.models.database.AUserInAServer;
|
||||
import dev.sheldan.abstracto.core.service.management.UserInServerManagementService;
|
||||
import dev.sheldan.abstracto.experience.ExperienceRelatedTest;
|
||||
import dev.sheldan.abstracto.experience.service.AUserExperienceService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import net.dv8tion.jda.internal.entities.MemberImpl;
|
||||
import net.dv8tion.jda.internal.entities.ReceivedMessage;
|
||||
import net.dv8tion.jda.api.entities.Member;
|
||||
import net.dv8tion.jda.api.entities.Message;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
|
||||
import static org.mockito.Mockito.*;
|
||||
@@ -30,16 +29,14 @@ public class ExperienceTrackerListenerTest extends ExperienceRelatedTest {
|
||||
@Mock
|
||||
private UserInServerManagementService userInServerManagementService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test
|
||||
public void testExperienceTracking() {
|
||||
AServer server = AServer.builder().id(3L).build();
|
||||
AUser user = AUser.builder().id(4L).build();
|
||||
AUserInAServer userInAServer = AUserInAServer.builder().userReference(user).serverReference(server).build();
|
||||
MemberImpl member = MockUtils.getMockedMember(server, userInAServer, jda);
|
||||
ReceivedMessage mockedMessage = MockUtils.buildMockedMessage(1L, "text", member);
|
||||
Member member = Mockito.mock(Member.class);
|
||||
Message mockedMessage = Mockito.mock(Message.class);
|
||||
when(mockedMessage.getMember()).thenReturn(member);
|
||||
when(userInServerManagementService.loadUser(member)).thenReturn(userInAServer);
|
||||
testUnit.execute(mockedMessage);
|
||||
verify(userExperienceService, times(1)).addExperience(userInAServer);
|
||||
|
||||
@@ -1,20 +1,19 @@
|
||||
package dev.sheldan.abstracto.experience.listener;
|
||||
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import dev.sheldan.abstracto.core.models.database.AUser;
|
||||
import dev.sheldan.abstracto.core.models.database.AUserInAServer;
|
||||
import dev.sheldan.abstracto.experience.ExperienceRelatedTest;
|
||||
import dev.sheldan.abstracto.experience.models.database.AUserExperience;
|
||||
import dev.sheldan.abstracto.experience.service.AUserExperienceService;
|
||||
import dev.sheldan.abstracto.experience.service.management.UserExperienceManagementService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import net.dv8tion.jda.internal.entities.GuildImpl;
|
||||
import net.dv8tion.jda.internal.entities.MemberImpl;
|
||||
import net.dv8tion.jda.api.entities.Guild;
|
||||
import net.dv8tion.jda.api.entities.Member;
|
||||
import net.dv8tion.jda.api.entities.User;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.InjectMocks;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
|
||||
import static org.mockito.Mockito.*;
|
||||
@@ -31,16 +30,15 @@ public class JoiningUserRoleListenerTest extends ExperienceRelatedTest {
|
||||
@Mock
|
||||
private AUserExperienceService userExperienceService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Test
|
||||
public void testUserWithExperienceRejoining() {
|
||||
AServer server = AServer.builder().id(3L).build();
|
||||
AUser user = AUser.builder().id(1L).build();
|
||||
AUserInAServer aUserInAServer = AUserInAServer.builder().userInServerId(2L).userReference(user).build();
|
||||
MemberImpl member = MockUtils.getMockedMember(server, aUserInAServer, jda);
|
||||
GuildImpl guild = MockUtils.getGuild(server, jda);
|
||||
Member member = Mockito.mock(Member.class);
|
||||
User jdaUser = Mockito.mock(User.class);
|
||||
when(member.getUser()).thenReturn(jdaUser);
|
||||
when(jdaUser.getIdLong()).thenReturn(user.getId());
|
||||
Guild guild = Mockito.mock(Guild.class);
|
||||
AUserExperience experience = AUserExperience.builder().experience(3L).user(aUserInAServer).build();
|
||||
when(userExperienceManagementService.findUserInServer(aUserInAServer)).thenReturn(experience);
|
||||
testUnit.execute(member, guild, aUserInAServer);
|
||||
@@ -49,11 +47,10 @@ public class JoiningUserRoleListenerTest extends ExperienceRelatedTest {
|
||||
|
||||
@Test
|
||||
public void testUserWithOutExperienceRejoining() {
|
||||
AServer server = AServer.builder().id(3L).build();
|
||||
AUser user = AUser.builder().id(1L).build();
|
||||
AUserInAServer aUserInAServer = AUserInAServer.builder().userInServerId(2L).userReference(user).build();
|
||||
MemberImpl member = MockUtils.getMockedMember(server, aUserInAServer, jda);
|
||||
GuildImpl guild = MockUtils.getGuild(server, jda);
|
||||
Member member = Mockito.mock(Member.class);
|
||||
Guild guild = Mockito.mock(Guild.class);
|
||||
AUserExperience experience = AUserExperience.builder().experience(3L).user(aUserInAServer).build();
|
||||
when(userExperienceManagementService.findUserInServer(aUserInAServer)).thenReturn(null);
|
||||
testUnit.execute(member, guild, aUserInAServer);
|
||||
|
||||
@@ -21,15 +21,12 @@ import dev.sheldan.abstracto.experience.service.management.UserExperienceManagem
|
||||
import dev.sheldan.abstracto.templating.model.MessageToSend;
|
||||
import dev.sheldan.abstracto.templating.service.TemplateService;
|
||||
import dev.sheldan.abstracto.test.MockUtils;
|
||||
import net.dv8tion.jda.internal.JDAImpl;
|
||||
import net.dv8tion.jda.internal.entities.*;
|
||||
import net.dv8tion.jda.api.entities.Member;
|
||||
import net.dv8tion.jda.api.entities.Message;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
import org.mockito.Captor;
|
||||
import org.mockito.InjectMocks;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.*;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
|
||||
import static org.mockito.Mockito.*;
|
||||
@@ -74,9 +71,6 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
@Mock
|
||||
private BotService botService;
|
||||
|
||||
@Mock
|
||||
private JDAImpl jda;
|
||||
|
||||
@Mock
|
||||
private RunTimeExperienceService runTimeExperienceService;
|
||||
|
||||
@@ -159,7 +153,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
levels.add(AExperienceLevel.builder().level(4).experienceNeeded(400L).build());
|
||||
mockSimpleServer(levels, experienceRoles, serverToUse);
|
||||
AUserInAServer userToUse = serverToUse.getUsers().get(0);
|
||||
MemberImpl jdaMember = MockUtils.getMockedMember(serverToUse, userToUse, jda);
|
||||
Member jdaMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(serverToUse, userToUse.getUserReference())).thenReturn(jdaMember);
|
||||
AExperienceRole previousExperienceRole = experienceRoles.get(3);
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, serverToUse, 401L, 3, previousExperienceRole, false);
|
||||
@@ -183,7 +177,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AExperienceRole> experienceRoles = getExperienceRoles(levels, serverToUse);
|
||||
mockSimpleServer(levels, experienceRoles, serverToUse);
|
||||
AUserInAServer userToUse = serverToUse.getUsers().get(0);
|
||||
MemberImpl jdaMember = MockUtils.getMockedMember(serverToUse, userToUse, jda);
|
||||
Member jdaMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(serverToUse, userToUse.getUserReference())).thenReturn(jdaMember);
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, serverToUse, 101L, 1, null, false);
|
||||
|
||||
@@ -202,7 +196,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AExperienceRole> experienceRoles = getExperienceRoles(levels, serverToUse);
|
||||
mockSimpleServer(levels, experienceRoles, serverToUse);
|
||||
AUserInAServer userToUse = serverToUse.getUsers().get(0);
|
||||
MemberImpl jdaMember = MockUtils.getMockedMember(serverToUse, userToUse, jda);
|
||||
Member jdaMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(serverToUse, userToUse.getUserReference())).thenReturn(jdaMember);
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, serverToUse, 50L, 0, null, false);
|
||||
|
||||
@@ -221,7 +215,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AExperienceRole> experienceRoles = getExperienceRoles(levels, serverToUse);
|
||||
mockSimpleServer(levels, experienceRoles, serverToUse);
|
||||
AUserInAServer userToUse = serverToUse.getUsers().get(0);
|
||||
MemberImpl jdaMember = MockUtils.getMockedMember(serverToUse, userToUse, jda);
|
||||
Member jdaMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(serverToUse, userToUse.getUserReference())).thenReturn(jdaMember);
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, serverToUse, 50L, 0, experienceRoles.get(0), false);
|
||||
|
||||
@@ -243,7 +237,6 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AExperienceRole> experienceRoles = getExperienceRoles(levels, serverToUse);
|
||||
mockSimpleServer(levels, experienceRoles, serverToUse);
|
||||
AUserInAServer userToUse = serverToUse.getUsers().get(0);
|
||||
MockUtils.getMockedMember(serverToUse, userToUse, jda);
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, serverToUse, 50L, 0, experienceRoles.get(0), true);
|
||||
|
||||
testUnit.handleExperienceGain(servers);
|
||||
@@ -262,7 +255,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AExperienceRole> experienceRoles = getExperienceRoles(levels, serverToUse);
|
||||
mockSimpleServer(levels, experienceRoles, serverToUse);
|
||||
AUserInAServer userToUse = serverToUse.getUsers().get(0);
|
||||
MemberImpl jdaMember = MockUtils.getMockedMember(serverToUse, userToUse, jda);
|
||||
Member jdaMember = Mockito.mock(Member.class);
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, serverToUse, 50L, 0, experienceRoles.get(0), false);
|
||||
when(botService.getMemberInServer(userToUse)).thenReturn(jdaMember);
|
||||
when(roleService.hasAnyOfTheRoles(eq(jdaMember), anyList())).thenReturn(true);
|
||||
@@ -282,7 +275,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AExperienceRole> experienceRoles = getExperienceRoles(levels, serverToUse);
|
||||
mockSimpleServer(levels, experienceRoles, serverToUse);
|
||||
AUserInAServer userToUse = serverToUse.getUsers().get(0);
|
||||
MemberImpl jdaMember = MockUtils.getMockedMember(serverToUse, userToUse, jda);
|
||||
Member jdaMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(serverToUse, userToUse.getUserReference())).thenReturn(jdaMember);
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, serverToUse, 101L, 1, experienceRoles.get(1), false);
|
||||
when(experienceRoleService.calculateRole(newUserExperience, experienceRoles)).thenReturn(experienceRoles.get(1));
|
||||
@@ -311,7 +304,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AExperienceRole> experienceRoles = getExperienceRoles(levels, aServer);
|
||||
mockSimpleServer(levels, experienceRoles, aServer);
|
||||
AUserInAServer userToUse = aServer.getUsers().get(0);
|
||||
MemberImpl jdaMember = MockUtils.getMockedMember(aServer, userToUse, jda);
|
||||
Member jdaMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(aServer, userToUse.getUserReference())).thenReturn(jdaMember);
|
||||
AExperienceRole role = experienceRoles.get(experienceRoleIndices.get(i));
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, aServer, experienceValues, level, role, false);
|
||||
@@ -450,9 +443,9 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AUserExperience> experiences = Arrays.asList(experience, experience2);
|
||||
|
||||
List<AUserInAServer> users = experiences.stream().map(AUserExperience::getUser).collect(Collectors.toList());
|
||||
MemberImpl firstMember = MockUtils.getMockedMember(server, users.get(0), jda);
|
||||
Member firstMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(server, users.get(0).getUserReference())).thenReturn(firstMember);
|
||||
MemberImpl secondMember = MockUtils.getMockedMember(server, users.get(1), jda);
|
||||
Member secondMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(server, users.get(1).getUserReference())).thenReturn(secondMember);
|
||||
experience.setCurrentExperienceRole(firstPreviousRole);
|
||||
experience2.setCurrentExperienceRole(secondPreviousRole);
|
||||
@@ -547,7 +540,8 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
MessageToSend statusMessage = MessageToSend.builder().message("text").build();
|
||||
when(templateService.renderEmbedTemplate(eq("user_sync_status_message"), any(UserSyncStatusModel.class))).thenReturn(statusMessage);
|
||||
long messageId = 5L;
|
||||
ReceivedMessage statusMessageJDA = MockUtils.buildMockedMessage(messageId, "text", null);
|
||||
Message statusMessageJDA = Mockito.mock(Message.class);
|
||||
when(statusMessageJDA.getIdLong()).thenReturn(messageId);
|
||||
when(messageService.createStatusMessage(statusMessage, channel)).thenReturn(CompletableFuture.completedFuture(statusMessageJDA));
|
||||
testUnit.syncUserRolesWithFeedback(server, channel);
|
||||
verify(messageService, times(messageCount)).updateStatusMessage(channel, messageId, statusMessage);
|
||||
@@ -559,7 +553,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
List<AUserExperience> experiences = Arrays.asList(experience);
|
||||
|
||||
List<AUserInAServer> users = experiences.stream().map(AUserExperience::getUser).collect(Collectors.toList());
|
||||
MemberImpl firstMember = MockUtils.getMockedMember(server, users.get(0), jda);
|
||||
Member firstMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(server, users.get(0).getUserReference())).thenReturn(firstMember);
|
||||
experience.setCurrentExperienceRole(previousRole);
|
||||
when(experienceRoleManagementService.getExperienceRolesForServer(server)).thenReturn(usedExperienceRoles);
|
||||
@@ -605,7 +599,7 @@ public class AUserExperienceServiceBeanTest extends ExperienceRelatedTest {
|
||||
|
||||
private AExperienceRole testRoleRelatedScenario(boolean shouldHaveRole, List<AExperienceLevel> levels, List<AServer> servers, AServer serverToUse, List<AExperienceRole> experienceRoles, AUserInAServer userToUse, AExperienceRole previousExperienceRole) {
|
||||
mockSimpleServer(levels, experienceRoles, serverToUse);
|
||||
MemberImpl jdaMember = MockUtils.getMockedMember(serverToUse, userToUse, jda);
|
||||
Member jdaMember = Mockito.mock(Member.class);
|
||||
when(botService.getMemberInServer(serverToUse, userToUse.getUserReference())).thenReturn(jdaMember);
|
||||
AUserExperience newUserExperience = mockServerWithSingleUser(levels, serverToUse, 301L, 1, previousExperienceRole, false);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user