@Test public void testSwapSHS4DHS_NotInEngine() { // Setup items.add(shs); items.add(shs); items.add(shs); items.add(shs); items.add(shs); // 3 in engine, 2 outside. newType = dhs; oldType = shs; engineHsSlots = 0; equippedHs = items.size(); maxEquippableNewType = 2; maxGloballyEquippableNewType = 10; makeDefaultCut(); Mockito.when(component.getSlotsFree()).thenReturn(0); // Execute OpSetHeatSinkType cut = new OpSetHeatSinkType(null, loadout, dhsUpgrade); cut.apply(); // Verify Mockito.verify(component, Mockito.times(items.size())).removeItem(shs); Mockito.verify(component, Mockito.times(maxEquippableNewType)).addItem(dhs); }
@Test public void testIssue288_test2() throws DecodingException { String lsml = "lsml://rQAAFwAAAAAAAAAAAAAAQapmxMmTJkwmTJkwFvpkyZMAmTJh"; Base64LoadoutCoder coder = new Base64LoadoutCoder(); LoadoutStandard loaded = (LoadoutStandard) coder.parse(lsml); OpSetHeatSinkType cut = new OpSetHeatSinkType(null, loaded, UpgradeDB.DOUBLE_HEATSINKS); cut.apply(); for (HeatSink item : loaded.items(HeatSink.class)) { assertNotEquals(item, ItemDB.SHS); } }
@Test public void testDHSBug1() throws DecodingException { String lsml = "lsml://rQAAawgMBA4ODAQMBA4IQapmzq6gTJgt1+H0kJkx1dSMFA=="; Base64LoadoutCoder coder = new Base64LoadoutCoder(); LoadoutStandard loaded = (LoadoutStandard) coder.parse(lsml); OpSetHeatSinkType cut = new OpSetHeatSinkType(null, loaded, UpgradeDB.DOUBLE_HEATSINKS); cut.apply(); for (HeatSink item : loaded.items(HeatSink.class)) { assertNotEquals(item, ItemDB.SHS); } }
@Test public void testIssue288() throws DecodingException { String lsml = "lsml://rRoAkUBDDVASZBRDDVAGvqmbPkyZMmTJkxmZiZMmTJkyZMJkxgjXEyZMVZOTTAI="; Base64LoadoutCoder coder = new Base64LoadoutCoder(); LoadoutStandard loaded = (LoadoutStandard) coder.parse(lsml); OpSetHeatSinkType cut = new OpSetHeatSinkType(null, loaded, UpgradeDB.DOUBLE_HEATSINKS); cut.apply(); for (HeatSink item : loaded.items(HeatSink.class)) { assertNotEquals(item, ItemDB.SHS); } }