コード例 #1
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testAttachedFitChargeToNone(self):
     eos = Mock(spec_set=())
     fit = self._makeFit(eos=eos)
     module = Module(1, state=State.active, charge=None)
     charge = Charge(2)
     fit.ordered.append(module)
     module.charge = charge
     self.expectModuleChargeLink = True
     # Action
     module.charge = None
     # Checks
     self.assertEqual(len(fit.lt), 1)
     self.assertIn(module, fit.lt)
     self.assertEqual(fit.lt[module], {State.offline, State.online, State.active})
     self.assertEqual(len(fit.rt), 1)
     self.assertIn(module, fit.rt)
     self.assertEqual(fit.rt[module], {State.offline, State.online, State.active})
     self.assertIsNone(module.charge)
     self.assertIsNone(module._other)
     self.assertIsNone(charge.container)
     self.assertIsNone(charge._other)
     self.assertIs(module._fit, fit)
     self.assertIsNone(charge._fit)
     # Misc
     self.expectModuleChargeLink = None
     fit.ordered.remove(module)
     self.assertFitBuffersEmpty(fit)
コード例 #2
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testDetachedModuleChargeToNone(self):
     module = Module(1, state=State.active, charge=None)
     charge = Charge(2)
     module.charge = charge
     # Action
     module.charge = None
     # Checks
     self.assertIsNone(module.charge)
     self.assertIsNone(module._other)
     self.assertIsNone(charge.container)
     self.assertIsNone(charge._other)
     self.assertIsNone(module._fit)
     self.assertIsNone(charge._fit)
コード例 #3
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testDetachedModuleNoneToNone(self):
     module = Module(1, state=State.active, charge=None)
     # Action
     module.charge = None
     # Checks
     self.assertIsNone(module.charge)
     self.assertIsNone(module._other)
コード例 #4
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testDetachedFitChargeToBoundCharge(self):
     fit = self._makeFit()
     fitOther = self._makeFit()
     module = Module(1, state=State.active, charge=None)
     charge1 = Charge(2)
     charge2 = Charge(3)
     fit.ordered.append(module)
     fitOther.ordered.append(charge2)
     module.charge = charge1
     # Action
     self.assertRaises(ValueError, module.__setattr__, 'charge', charge2)
     # Checks
     self.assertEqual(len(fit.lt), 0)
     self.assertEqual(len(fit.rt), 0)
     self.assertEqual(len(fitOther.lt), 0)
     self.assertEqual(len(fitOther.rt), 0)
     self.assertIs(module.charge, charge1)
     self.assertIs(module._other, charge1)
     self.assertIs(charge1.container, module)
     self.assertIs(charge1._other, module)
     self.assertIsNone(charge2.container)
     self.assertIsNone(charge2._other)
     self.assertIs(module._fit, fit)
     self.assertIs(charge1._fit, fit)
     self.assertIs(charge2._fit, fitOther)
     # Misc
     fit.ordered.remove(module)
     fitOther.ordered.remove(charge2)
     self.assertFitBuffersEmpty(fit)
     self.assertFitBuffersEmpty(fitOther)
コード例 #5
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testDetachedModuleChargeToFreeCharge(self):
     module = Module(1, state=State.active, charge=None)
     charge1 = Charge(2)
     charge2 = Charge(3)
     module.charge = charge1
     # Action
     module.charge = charge2
     # Checks
     self.assertIs(module.charge, charge2)
     self.assertIs(module._other, charge2)
     self.assertIsNone(charge1.container)
     self.assertIsNone(charge1._other)
     self.assertIs(charge2.container, module)
     self.assertIs(charge2._other, module)
     self.assertIsNone(module._fit)
     self.assertIsNone(charge1._fit)
     self.assertIsNone(charge2._fit)
コード例 #6
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testDetachedModuleNoneToFreeCharge(self):
     module = Module(1, state=State.active, charge=None)
     charge = Charge(2)
     # Action
     module.charge = charge
     # Checks
     self.assertIs(module.charge, charge)
     self.assertIs(module._other, charge)
     self.assertIs(charge.container, module)
     self.assertIs(charge._other, module)
コード例 #7
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testDetachedFitChargeToNone(self):
     fit = self._makeFit()
     module = Module(1, state=State.active, charge=None)
     charge = Charge(2)
     fit.ordered.append(module)
     module.charge = charge
     # Action
     module.charge = None
     # Checks
     self.assertEqual(len(fit.lt), 0)
     self.assertEqual(len(fit.rt), 0)
     self.assertIsNone(module.charge)
     self.assertIsNone(module._other)
     self.assertIsNone(charge.container)
     self.assertIsNone(charge._other)
     self.assertIs(module._fit, fit)
     self.assertIsNone(charge._fit)
     # Misc
     fit.ordered.remove(module)
     self.assertFitBuffersEmpty(fit)
コード例 #8
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testAttachedFitChargeToBoundCharge(self):
     eos = Mock(spec_set=())
     fit = self._makeFit(eos=eos)
     fitOther = self._makeFit(eos=eos)
     module = Module(1, state=State.active, charge=None)
     charge1 = Charge(2)
     charge2 = Charge(3)
     fit.ordered.append(module)
     fitOther.ordered.append(charge2)
     module.charge = charge1
     self.expectModuleChargeLink = True
     # Action
     self.assertRaises(ValueError, module.__setattr__, 'charge', charge2)
     # Checks
     self.assertEqual(len(fit.lt), 2)
     self.assertIn(module, fit.lt)
     self.assertEqual(fit.lt[module], {State.offline, State.online, State.active})
     self.assertIn(charge1, fit.lt)
     self.assertEqual(fit.lt[charge1], {State.offline})
     self.assertEqual(len(fit.rt), 2)
     self.assertIn(module, fit.rt)
     self.assertEqual(fit.rt[module], {State.offline, State.online, State.active})
     self.assertIn(charge1, fit.rt)
     self.assertEqual(fit.rt[charge1], {State.offline})
     self.assertEqual(len(fitOther.lt), 1)
     self.assertIn(charge2, fitOther.lt)
     self.assertEqual(fitOther.lt[charge2], {State.offline})
     self.assertEqual(len(fitOther.rt), 1)
     self.assertIn(charge2, fitOther.rt)
     self.assertEqual(fitOther.rt[charge2], {State.offline})
     self.assertIs(module.charge, charge1)
     self.assertIs(module._other, charge1)
     self.assertIs(charge1.container, module)
     self.assertIs(charge1._other, module)
     self.assertIsNone(charge2.container)
     self.assertIsNone(charge2._other)
     self.assertIs(module._fit, fit)
     self.assertIs(charge1._fit, fit)
     self.assertIs(charge2._fit, fitOther)
     # Misc
     self.expectModuleChargeLink = None
     fit.ordered.remove(module)
     fitOther.ordered.remove(charge2)
     self.assertFitBuffersEmpty(fit)
     self.assertFitBuffersEmpty(fitOther)
コード例 #9
0
ファイル: testModuleCharge.py プロジェクト: NiGhTTraX/Eos
 def testAttachedFitAddRemovedModule(self):
     eos = Mock(spec_set=())
     fit = self._makeFit(eos=eos)
     module = Module(1, state=State.active, charge=None)
     charge = Charge(2)
     module.charge = charge
     fit.ordered.append(module)
     self.expectModuleChargeLink = True
     # Action
     fit.ordered.remove(module)
     # Checks
     self.assertEqual(len(fit.lt), 0)
     self.assertEqual(len(fit.rt), 0)
     self.assertEqual(len(fit.ordered), 0)
     self.assertIs(module.charge, charge)
     self.assertIs(module._other, charge)
     self.assertIs(charge.container, module)
     self.assertIs(charge._other, module)
     self.assertIsNone(module._fit)
     self.assertIsNone(charge._fit)
     # Misc
     self.assertFitBuffersEmpty(fit)