예제 #1
0
 def register_power_hardware(name, capacity, memory):
     power_hardware = PowerHardware(name, capacity, memory)
     hardware_already_added = [
         hard for hard in System._hardware
         if hard.name == power_hardware.name
     ]
     if not hardware_already_added:
         System._hardware.append(power_hardware)
예제 #2
0
 def register_power_hardware(name: str, capacity: int, memory: int):
     System._hardware.append(PowerHardware(name, capacity, memory))
예제 #3
0
 def register_power_hardware(name, capacity, memory):
     power_hardware = PowerHardware(name=name, capacity=capacity, memory=memory)
     System._hardware.append(power_hardware)
예제 #4
0
 def register_power_hardware(name: str, capacity: int, memory: int):
     # Create a PowerHardware instance and add it to the hardware list
     System._hardware.append(PowerHardware(name, capacity, memory))
예제 #5
0
 def register_power_hardware(name, capacity: int, memory: int):
     result = PowerHardware(name, capacity, memory)
     System._hardware.append(result)
예제 #6
0
 def setUp(self):
     self.hardware = Hardware("test", "test_type", 10, 100)
     self.power_hardware = PowerHardware("power", 20, 50)
     self.heavy_hardware = HeavyHardware("heavy", 20, 50)
     self.light_software = LightSoftware("light", 10, 10)
     self.express_software = ExpressSoftware("express", 10, 10)
예제 #7
0
 def register_power_hardware(name, capacity, memory):
     new = PowerHardware(name, capacity, memory)
     System._hardware.append(new)
예제 #8
0
 def setUp(self):
     self.hardware = HeavyHardware('test', 100, 512)
     self.power = PowerHardware('test', 100, 512)
예제 #9
0
class TestHardware(unittest.TestCase):
    def setUp(self):
        self.hardware = HeavyHardware('test', 100, 512)
        self.power = PowerHardware('test', 100, 512)

    def test_setup_heavy(self):
        self.assertEqual(self.hardware.name, 'test')
        self.assertEqual(self.hardware.type, 'Heavy')
        self.assertEqual(self.hardware.capacity, 200)
        self.assertEqual(self.hardware.memory, 384)
        self.assertEqual(self.hardware.software_components, [])

    def test_setup_power(self):
        self.assertEqual(self.power.name, 'test')
        self.assertEqual(self.power.type, 'Power')
        self.assertEqual(self.power.capacity, 25)
        self.assertEqual(self.power.memory, 896)
        self.assertEqual(self.power.software_components, [])

    def test_install_when_is_ok_heavy(self):
        s = LightSoftware('Light', 10, 10)
        p = ExpressSoftware('Express', 10, 10)

        self.hardware.install(s)
        self.assertEqual(self.hardware.software_components[0], s)

        self.power.install(p)
        self.assertEqual(self.power.software_components[0], p)

    def test_install_when_not_good_param_heavy(self):
        s = LightSoftware('Light', 200, 384)
        p = ExpressSoftware('Express', 10, 900)

        with self.assertRaises(Exception) as ex:
            self.hardware.install(s)
        self.assertEqual(str(ex.exception), "Software cannot be installed")

        with self.assertRaises(Exception) as ex:
            self.power.install(p)
        self.assertEqual(str(ex.exception), "Software cannot be installed")

    def test_install_when_space_is_less_heavy(self):
        s = LightSoftware('Light', 10, 1000)
        with self.assertRaises(Exception) as ex:
            self.hardware.install(s)
        self.assertEqual(str(ex.exception), "Software cannot be installed")

    def test_install_when_space_and_memory_is_less_heavy(self):
        s = LightSoftware('Light', 100, 1000)
        with self.assertRaises(Exception) as ex:
            self.hardware.install(s)
        self.assertEqual(str(ex.exception), "Software cannot be installed")

    def test_uninstall_software_heavy(self):
        s = LightSoftware('Light', 10, 10)
        self.hardware.install(s)
        self.hardware.uninstall(s)
        self.assertEqual(self.hardware.software_components, [])

    def test_get_light_software_component_count(self):
        s = LightSoftware('Light', 10, 10)
        self.hardware.install(s)
        excpected = self.hardware.get_light_software_components_count()
        self.assertEqual(excpected, 1)

    def test_get_express_software_components_count(self):
        s = ExpressSoftware('Express', 10, 10)
        self.hardware.install(s)
        excpected = self.hardware.get_express_software_components_count()
        self.assertEqual(excpected, 1)