Add slayer superior foe notification

This commit is contained in:
Xavier Bergeron
2018-03-07 14:51:42 -05:00
committed by Adam
parent fc05994f79
commit 87acc04696
3 changed files with 48 additions and 2 deletions

View File

@@ -24,22 +24,27 @@
*/
package net.runelite.client.plugins.slayer;
import static net.runelite.api.ChatMessageType.SERVER;
import static org.junit.Assert.assertEquals;
import com.google.inject.Guice;
import com.google.inject.testing.fieldbinder.Bind;
import com.google.inject.testing.fieldbinder.BoundFieldModule;
import javax.inject.Inject;
import static net.runelite.api.ChatMessageType.SERVER;
import net.runelite.api.Client;
import net.runelite.api.events.ChatMessage;
import net.runelite.client.Notifier;
import net.runelite.client.game.ItemManager;
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
import static org.junit.Assert.assertEquals;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
import org.mockito.runners.MockitoJUnitRunner;
@RunWith(MockitoJUnitRunner.class)
public class SlayerPluginTest
{
@@ -50,6 +55,8 @@ public class SlayerPluginTest
private static final String TASK_COMPLETE = "You need something new to hunt.";
private static final String TASK_CANCELED = "Your task has been cancelled.";
private static final String SUPERIOR_MESSAGE = "A superior foe has appeared...";
@Mock
@Bind
Client client;
@@ -70,6 +77,10 @@ public class SlayerPluginTest
@Bind
ItemManager itemManager;
@Mock
@Bind
Notifier notifier;
@Inject
SlayerPlugin slayerPlugin;
@@ -138,4 +149,18 @@ public class SlayerPluginTest
assertEquals("", slayerPlugin.getTaskName());
assertEquals(0, slayerPlugin.getAmount());
}
@Test
public void testSuperiorNotification()
{
ChatMessage chatMessageEvent = new ChatMessage(SERVER, "Superior", SUPERIOR_MESSAGE, null);
when(slayerConfig.showSuperiorNotification()).thenReturn(true);
slayerPlugin.onChatMessage(chatMessageEvent);
verify(notifier).notify(SUPERIOR_MESSAGE);
when(slayerConfig.showSuperiorNotification()).thenReturn(false);
slayerPlugin.onChatMessage(chatMessageEvent);
verifyNoMoreInteractions(notifier);
}
}