diff --git a/src/main/java/fr/xephi/authme/util/Utils.java b/src/main/java/fr/xephi/authme/util/Utils.java index 9803042c..18a7e206 100644 --- a/src/main/java/fr/xephi/authme/util/Utils.java +++ b/src/main/java/fr/xephi/authme/util/Utils.java @@ -34,6 +34,7 @@ public final class Utils { static { plugin = AuthMe.getInstance(); + wrapper = new Wrapper(plugin); initializeOnlinePlayersIsCollectionField(); } diff --git a/src/test/java/fr/xephi/authme/settings/MessageKeyTest.java b/src/test/java/fr/xephi/authme/settings/MessageKeyTest.java new file mode 100644 index 00000000..2eab88aa --- /dev/null +++ b/src/test/java/fr/xephi/authme/settings/MessageKeyTest.java @@ -0,0 +1,33 @@ +package fr.xephi.authme.settings; + +import fr.xephi.authme.util.StringUtils; +import org.junit.Test; + +import java.util.HashSet; +import java.util.Set; + +import static org.junit.Assert.fail; + +/** + * Test for {@link MessageKey}. + */ +public class MessageKeyTest { + + @Test + public void shouldHaveUniqueMessageKeys() { + // given + MessageKey[] messageKeys = MessageKey.values(); + Set keys = new HashSet<>(); + + // when / then + for (MessageKey messageKey : messageKeys) { + String key = messageKey.getKey(); + if (keys.contains(key)) { + fail("Found key '" + messageKey.getKey() + "' twice!"); + } else if (StringUtils.isEmpty(key)) { + fail("Key for message key '" + messageKey + "' is empty"); + } + keys.add(key); + } + } +} diff --git a/src/test/java/fr/xephi/authme/settings/MessagesTest.java b/src/test/java/fr/xephi/authme/settings/MessagesTest.java index 3d4f138e..842019f2 100644 --- a/src/test/java/fr/xephi/authme/settings/MessagesTest.java +++ b/src/test/java/fr/xephi/authme/settings/MessagesTest.java @@ -7,22 +7,38 @@ import org.junit.Before; import org.junit.Test; import java.io.File; +import java.net.URL; + +import static java.util.Arrays.asList; /** * Test for {@link Messages}. */ public class MessagesTest { + private static final String YML_TEST_FILE = "messages_test.yml"; + private Messages messages; + @Before public void setUpMessages() { AuthMe authMe = AuthMeMockUtil.mockAuthMeInstance(); AuthMeMockUtil.insertMockWrapperInstance(ConsoleLogger.class, "wrapper", authMe); - File file = new File("messages_test.yml"); - Messages messages = new Messages(file, "en"); + + Settings.messagesLanguage = "en"; + URL url = getClass().getClassLoader().getResource(YML_TEST_FILE); + if (url == null) { + throw new RuntimeException("File '" + YML_TEST_FILE + "' could not be loaded"); + } + + File file = new File(url.getFile()); + messages = new Messages(file, "en"); } @Test public void shouldLoadMessages() { - + // given + // when + String[] send = messages.send(MessageKey.CAPTCHA_WRONG_ERROR.getKey()); + System.out.println(asList(send)); } } diff --git a/src/test/java/fr/xephi/authme/util/UtilsTest.java b/src/test/java/fr/xephi/authme/util/UtilsTest.java index 97b64184..f228947f 100644 --- a/src/test/java/fr/xephi/authme/util/UtilsTest.java +++ b/src/test/java/fr/xephi/authme/util/UtilsTest.java @@ -44,10 +44,14 @@ public class UtilsTest { BukkitScheduler schedulerMock = mock(BukkitScheduler.class); when(serverMock.getScheduler()).thenReturn(schedulerMock); + + when(schedulerMock.runTaskAsynchronously(any(Plugin.class), any(Runnable.class))) .thenReturn(mock(BukkitTask.class)); + System.out.println("Initialized scheduler mock for server mock"); AuthMeMockUtil.insertMockWrapperInstance(Utils.class, "wrapper", (WrapperMock) wrapperMock); + System.out.println("Iniadfk"); permissionsManagerMock = mock(PermissionsManager.class); when(authMeMock.getPermissionsManager()).thenReturn(permissionsManagerMock);