menu entry swapper: add shift click teleport spell swap

Co-authored-by: Adam <Adam@sigterm.info>
This commit is contained in:
Alex
2019-10-11 20:11:24 +01:00
committed by Adam
parent 37e025ed79
commit fcbd26bbc9
3 changed files with 96 additions and 0 deletions

View File

@@ -42,6 +42,7 @@ import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
import static org.mockito.ArgumentMatchers.any;
import org.mockito.Mock;
import static org.mockito.Mockito.clearInvocations;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
@@ -209,4 +210,57 @@ public class MenuEntrySwapperPluginTest
menu("Pay (north)", "Kragen", MenuAction.NPC_THIRD_OPTION),
}, argumentCaptor.getValue());
}
@Test
public void testTeleport()
{
when(config.swapTeleportSpell()).thenReturn(true);
menuEntrySwapperPlugin.setShiftModifier(true);
// Cast -> Grand Exchange
entries = new MenuEntry[]{
menu("Cancel", "", MenuAction.CANCEL),
menu("Configure", "Varrock Teleport", MenuAction.WIDGET_THIRD_OPTION),
menu("Grand Exchange", "Varrock Teleport", MenuAction.WIDGET_SECOND_OPTION),
menu("Cast", "Varrock Teleport", MenuAction.WIDGET_FIRST_OPTION),
};
menuEntrySwapperPlugin.onClientTick(new ClientTick());
ArgumentCaptor<MenuEntry[]> argumentCaptor = ArgumentCaptor.forClass(MenuEntry[].class);
verify(client).setMenuEntries(argumentCaptor.capture());
assertArrayEquals(new MenuEntry[]{
menu("Cancel", "", MenuAction.CANCEL),
menu("Configure", "Varrock Teleport", MenuAction.WIDGET_THIRD_OPTION),
menu("Cast", "Varrock Teleport", MenuAction.WIDGET_FIRST_OPTION),
menu("Grand Exchange", "Varrock Teleport", MenuAction.WIDGET_SECOND_OPTION),
}, argumentCaptor.getValue());
clearInvocations(client);
// Grand Exchange -> Cast
entries = new MenuEntry[]{
menu("Cancel", "", MenuAction.CANCEL),
menu("Configure", "Varrock Teleport", MenuAction.WIDGET_THIRD_OPTION),
menu("Cast", "Varrock Teleport", MenuAction.WIDGET_SECOND_OPTION),
menu("Grand Exchange", "Varrock Teleport", MenuAction.WIDGET_FIRST_OPTION),
};
menuEntrySwapperPlugin.onClientTick(new ClientTick());
argumentCaptor = ArgumentCaptor.forClass(MenuEntry[].class);
verify(client).setMenuEntries(argumentCaptor.capture());
assertArrayEquals(new MenuEntry[]{
menu("Cancel", "", MenuAction.CANCEL),
menu("Configure", "Varrock Teleport", MenuAction.WIDGET_THIRD_OPTION),
menu("Grand Exchange", "Varrock Teleport", MenuAction.WIDGET_FIRST_OPTION),
menu("Cast", "Varrock Teleport", MenuAction.WIDGET_SECOND_OPTION),
}, argumentCaptor.getValue());
}
}