Esempio n. 1
0
 def test_effect_disabled(self):
     fit = Fit()
     item = Drone(self.mktype(attrs={
         AttrId.dmg_mult: 2.5,
         AttrId.em_dmg: 52,
         AttrId.therm_dmg: 63,
         AttrId.kin_dmg: 74,
         AttrId.expl_dmg: 85,
         self.cycle_attr.id: 4000
     },
                              effects=[self.effect],
                              default_effect=self.effect).id,
                  state=State.active)
     item.set_effect_mode(self.effect.id, EffectMode.force_stop)
     fit.drones.add(item)
     # Verification
     volley = item.get_volley()
     self.assertAlmostEqual(volley.em, 0)
     self.assertAlmostEqual(volley.thermal, 0)
     self.assertAlmostEqual(volley.kinetic, 0)
     self.assertAlmostEqual(volley.explosive, 0)
     self.assertAlmostEqual(volley.total, 0)
     # Cleanup
     self.assert_solsys_buffers_empty(fit.solar_system)
     self.assert_log_entries(0)
Esempio n. 2
0
 def test_generic(self):
     fit = Fit()
     item = Drone(
         self.mktype(
             attrs={
                 AttrId.dmg_mult: 2.5,
                 AttrId.em_dmg: 52,
                 AttrId.therm_dmg: 63,
                 AttrId.kin_dmg: 74,
                 AttrId.expl_dmg: 85,
                 self.cycle_attr.id: 4000},
             effects=[self.effect],
             default_effect=self.effect).id,
         state=State.active)
     fit.drones.add(item)
     # Verification
     volley = item.get_volley()
     self.assertAlmostEqual(volley.em, 130)
     self.assertAlmostEqual(volley.thermal, 157.5)
     self.assertAlmostEqual(volley.kinetic, 185)
     self.assertAlmostEqual(volley.explosive, 212.5)
     self.assertAlmostEqual(volley.total, 685)
     # Cleanup
     self.assert_solsys_buffers_empty(fit.solar_system)
     self.assert_log_entries(0)
Esempio n. 3
0
 def test_attr_therm_absent(self):
     fit = Fit()
     item = Drone(self.mktype(attrs={
         AttrId.dmg_mult: 2.5,
         AttrId.em_dmg: 52,
         AttrId.kin_dmg: 74,
         AttrId.expl_dmg: 85,
         self.cycle_attr.id: 4000
     },
                              effects=[self.effect],
                              default_effect=self.effect).id,
                  state=State.active)
     fit.drones.add(item)
     # Verification
     volley = item.get_volley()
     self.assertAlmostEqual(volley.em, 130)
     self.assertAlmostEqual(volley.thermal, 0)
     self.assertAlmostEqual(volley.kinetic, 185)
     self.assertAlmostEqual(volley.explosive, 212.5)
     self.assertAlmostEqual(volley.total, 527.5)
     # Cleanup
     self.assert_solsys_buffers_empty(fit.solar_system)
     self.assert_log_entries(0)