slayer plugin: Add parsing for boss task assignments

Ref: https://user-images.githubusercontent.com/2199511/45984305-f9c22600-c04f-11e8-8cda-a8f4ab40e678.png
This commit is contained in:
Jordan Atwood
2018-09-24 16:05:55 -07:00
parent 3e631f84d4
commit 20922aea9a
2 changed files with 31 additions and 11 deletions

View File

@@ -56,6 +56,8 @@ public class SlayerPluginTest
private static final String TASK_NEW = "Your new task is to kill 231 Suqahs.";
private static final String TASK_NEW_NPC_CONTACT = "Excellent, you're doing great. Your new task is to kill<br>211 Suqahs.";
private static final String TASK_BOSS_NEW = "Excellent. You're now assigned to kill Vet'ion 3 times.<br>Your reward point tally is 914.";
private static final String TASK_EXISTING = "You're still hunting suqahs; you have 222 to go. Come<br>back when you've finished your task.";
private static final String REWARD_POINTS = "Reward points: 17,566";
@@ -149,6 +151,19 @@ public class SlayerPluginTest
assertEquals(211, slayerPlugin.getAmount());
}
@Test
public void testBossTask()
{
Widget npcDialog = mock(Widget.class);
when(npcDialog.getText()).thenReturn(TASK_BOSS_NEW);
when(client.getWidget(WidgetInfo.DIALOG_NPC_TEXT)).thenReturn(npcDialog);
slayerPlugin.onGameTick(new GameTick());
assertEquals("Vet'ion", slayerPlugin.getTaskName());
assertEquals(3, slayerPlugin.getAmount());
assertEquals(914, slayerPlugin.getPoints());
}
@Test
public void testExistingTask()
{