diff --git a/.classpath b/.classpath
deleted file mode 100644
index 1a530da..0000000
--- a/.classpath
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.gitignore b/.gitignore
index ae3c172..d9239ca 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
-/bin/
+/bin/
+/.classpath
diff --git a/test/mineverse/Aust1n46/chat/utilities/FormatTest.java b/test/mineverse/Aust1n46/chat/utilities/FormatTest.java
new file mode 100644
index 0000000..7221749
--- /dev/null
+++ b/test/mineverse/Aust1n46/chat/utilities/FormatTest.java
@@ -0,0 +1,103 @@
+package mineverse.Aust1n46.chat.utilities;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.bukkit.configuration.file.FileConfiguration;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mockito;
+import org.powermock.api.mockito.PowerMockito;
+import org.powermock.core.classloader.annotations.PrepareForTest;
+import org.powermock.modules.junit4.PowerMockRunner;
+
+import mineverse.Aust1n46.chat.MineverseChat;
+
+@RunWith(PowerMockRunner.class)
+@PrepareForTest( { MineverseChat.class })
+public class FormatTest {
+
+ private MineverseChat mockPlugin;
+ private FileConfiguration mockConfig;
+
+ private List filters;
+
+ @Before
+ public void setUp() {
+ filters = new ArrayList();
+ filters.add("ass,donut");
+
+ mockPlugin = Mockito.mock(MineverseChat.class);
+ mockConfig = Mockito.mock(FileConfiguration.class);
+
+ PowerMockito.mockStatic(MineverseChat.class);
+ PowerMockito.when(MineverseChat.getInstance()).thenReturn(mockPlugin);
+ Mockito.when(mockPlugin.getConfig()).thenReturn(mockConfig);
+ Mockito.when(mockConfig.getStringList("filters")).thenReturn(filters);
+ }
+
+ @After
+ public void tearDown() {
+ mockPlugin = null;
+ mockConfig = null;
+ filters = new ArrayList();
+ }
+
+ @Test
+ public void testGetLastCodeSingleColor() {
+ String input = "§cHello";
+ String expectedResult = "§c";
+
+ String result = Format.getLastCode(input);
+
+ Assert.assertEquals(expectedResult, result);
+ }
+
+ @Test
+ public void testGetLastCodeColorAfterFormat() {
+ String input = "§o§cHello";
+ String expectedResult = "§c";
+
+ String result = Format.getLastCode(input);
+
+ Assert.assertEquals(expectedResult, result);
+ }
+
+ @Test
+ public void testGetLastCodeColorBeforeFormat() {
+ String input = "§c§oHello";
+ String expectedResult = "§c§o";
+
+ String result = Format.getLastCode(input);
+
+ Assert.assertEquals(expectedResult, result);
+ }
+
+ @Test
+ public void testFilterChat() {
+ String test = "I am an ass";
+ String expectedResult = "I am an donut";
+
+ String result = Format.FilterChat(test);
+ Assert.assertEquals(expectedResult, result);
+ }
+
+ @Test
+ public void testIsValidColor() {
+ String color = "red";
+
+ boolean result = Format.isValidColor(color);
+ Assert.assertTrue(result);
+ }
+
+ @Test
+ public void testIsInvalidColor() {
+ String color = "randomString";
+
+ boolean result = Format.isValidColor(color);
+ Assert.assertFalse(result);
+ }
+}