refactor(reflection): migrate to using cutin library
All checks were successful
github-mirror / push-github (push) Successful in 12s
Build / Gradle-Build (push) Successful in 15s
Test / Gradle-Test (push) Successful in 24s

This commit is contained in:
2025-04-13 23:15:38 +02:00
parent ebf5600e29
commit ef9384336a
47 changed files with 452 additions and 756 deletions

View File

@@ -16,10 +16,10 @@ import net.tomatentum.marinara.Marinara;
import net.tomatentum.marinara.wrapper.LibraryWrapper;
import net.tomatentum.marinara.wrapper.javacord.JavacordWrapper;
public class AutoCompleteTest {
class AutoCompleteTest {
@Test
public void testAutocomplete() {
void testAutocomplete() {
SlashCommandInteractionOption optionMock = mock();
AutocompleteInteraction autocompleteInteractionMock = mock();
@@ -33,7 +33,7 @@ public class AutoCompleteTest {
LibraryWrapper wrapper = new JavacordWrapper(null); //null okay as we don't use the discord API in this test.
Marinara marinara = Marinara.load(wrapper);
marinara.getRegistry().addInteractions(new TestAutocomplete());
marinara.getInteractionContainer().addAllMethods(new TestAutocomplete());
wrapper.handleInteraction(autocompleteInteractionMock);
verify(autocompleteInteractionMock).respondWithChoices(any());
}

View File

@@ -12,13 +12,13 @@ import net.tomatentum.marinara.wrapper.LibraryWrapper;
import net.tomatentum.marinara.wrapper.javacord.JavacordWrapper;
@TestInstance(Lifecycle.PER_CLASS)
public class ButtonTest {
class ButtonTest {
@Test
public void testButtonExecution() {
void testButtonExecution() {
LibraryWrapper wrapper = new JavacordWrapper(null); //null okay as we don't use the discord API in this test.
Marinara marinara = Marinara.load(wrapper);
marinara.getRegistry().addInteractions(new TestButton());
marinara.getInteractionContainer().addAllMethods(new TestButton());
wrapper.handleInteraction(CommonMocks.getButtonInteractionMock("test"));
assertTrue(TestButton.didRun);
}

View File

@@ -19,25 +19,25 @@ import net.tomatentum.marinara.wrapper.javacord.JavacordWrapper;
import net.tomatentum.marinara.wrapper.javacord.checks.PermissionCheck;
@TestInstance(Lifecycle.PER_CLASS)
public class InteractionCheckTest {
class InteractionCheckTest {
@Test
public void testInteractionCheck() {
void testInteractionCheck() {
LibraryWrapper wrapper = new JavacordWrapper(null);
Marinara marinara = Marinara.load(wrapper);
marinara.getCheckRegistry().addCheck(new TestInteractionCheck());
marinara.getRegistry().addInteractions(new TestButton());
marinara.getCheckContainer().addAllMethods(new TestInteractionCheck());
marinara.getInteractionContainer().addAllMethods(new TestButton());
wrapper.handleInteraction(CommonMocks.getButtonInteractionMock("test"));
assertTrue(TestInteractionCheck.preExecuted);
assertTrue(TestInteractionCheck.postExecuted);
}
@Test
public void testPermissionCheck() {
void testPermissionCheck() {
LibraryWrapper wrapper = new JavacordWrapper(null);
Marinara marinara = Marinara.load(wrapper);
marinara.getCheckRegistry().addCheck(new PermissionCheck());
marinara.getRegistry().addInteractions(new TestButton());
marinara.getCheckContainer().addAllMethods(new PermissionCheck());
marinara.getInteractionContainer().addAllMethods(new TestButton());
Server serverMock = mock();
ButtonInteraction buttonInteractionMock = CommonMocks.getButtonInteractionMock("permissionCheck", serverMock);

View File

@@ -20,7 +20,7 @@ import net.tomatentum.marinara.Marinara;
import net.tomatentum.marinara.wrapper.LibraryWrapper;
import net.tomatentum.marinara.wrapper.javacord.JavacordWrapper;
@TestInstance(Lifecycle.PER_CLASS)
public class SlashCommandTest {
class SlashCommandTest {
String DISCORD_TOKEN = System.getenv("DISCORD_TEST_TOKEN");
DiscordApi api;
@@ -41,8 +41,8 @@ public class SlashCommandTest {
@Test
void testSlashCommand() {
Marinara marinara = Marinara.load(new JavacordWrapper(api));
marinara.getRegistry().addInteractions(new TestCommand());
marinara.getRegistry().registerCommands();
marinara.getInteractionContainer().addAllMethods(new TestCommand());
marinara.registerCommands();
System.out.println("Success!");
}
@@ -50,7 +50,7 @@ public class SlashCommandTest {
void testSlashCommandExecution() {
LibraryWrapper wrapper = new JavacordWrapper(api);
Marinara marinara = Marinara.load(wrapper);
marinara.getRegistry().addInteractions(new TestCommand());
marinara.getInteractionContainer().addAllMethods(new TestCommand());
SlashCommandInteractionOption optionMock = mock();
SlashCommandInteraction interactionMock = mock();

View File

@@ -4,7 +4,6 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.Collections;
import org.javacord.api.event.interaction.SlashCommandCreateEvent;
import org.javacord.api.interaction.AutocompleteInteraction;
import org.javacord.api.interaction.SlashCommandInteraction;
@@ -24,15 +23,14 @@ public class TestAutocomplete implements InteractionHandler {
autocompletes = @AutoComplete("testAuto")
)
)
@AutoComplete("testAuto")
public void exec(SlashCommandInteraction context) {
//only here for command definition
}
@AutoComplete("testAuto")
public void autocomplete(AutocompleteInteraction context, String value) {
System.out.println("Success!");
assertEquals(value, "test");
assertEquals("test", value);
context.respondWithChoices(Collections.emptyList());
}

View File

@@ -16,8 +16,8 @@ import net.tomatentum.marinara.wrapper.javacord.checks.PermissionCheck.HasPermis
public class TestButton implements InteractionHandler {
public static boolean didRun = false;
@Button("test")
@TestCheck
public void exec(ButtonInteraction interaction, TextChannel channel, Message message, User member, Server server) {

View File

@@ -11,6 +11,7 @@ import net.tomatentum.marinara.interaction.commands.annotation.SlashCommandOptio
import net.tomatentum.marinara.interaction.commands.option.SlashCommandOptionType;
public class TestCommand implements InteractionHandler {
@SlashCommand(
name = "test",
description = "testingen",
@@ -27,7 +28,8 @@ public class TestCommand implements InteractionHandler {
}
)
public void exec(SlashCommandInteraction interaction, String test) {
assertEquals(test, "test");
assertEquals("test", test);
System.out.println("Success!");
}
}