def test_upgrade_pass(self): """Verify upgrade upgrade in progress variable properly reports.""" self._set_args({ "firmware": ["path/to/test_drive_firmware_1", "path/to/test_drive_firmware_2"], "wait_for_completion": False }) firmware_object = NetAppESeriesDriveFirmware() firmware_object.upgrade_drives_online = True firmware_object.upgrade_list = lambda: {} with mock.patch(self.REQUEST_FUNC, return_value=(200, {})): firmware_object.upgrade() self.assertTrue(firmware_object.upgrade_in_progress) self._set_args({ "firmware": ["path_to_test_drive_firmware_1", "path_to_test_drive_firmware_2"], "wait_for_completion": True }) firmware_object = NetAppESeriesDriveFirmware() firmware_object.upgrade_drives_online = True firmware_object.upgrade_list = lambda: self.UPGRADE_LIST_RESPONSE with mock.patch(self.REQUEST_FUNC, side_effect=[ (200, {}), (200, { "driveStatus": [{ "driveRef": "010000005000C5007EDE4ECF0000000000000000", "status": "okay" }, { "driveRef": "010000005000C5007EDF9AAB0000000000000000", "status": "okay" }, { "driveRef": "010000005000C5007EDBE3C70000000000000000", "status": "okay" }, { "driveRef": "010000005000C5007EDE4ECF0000000000000001", "status": "okay" }, { "driveRef": "010000005000C5007EDF9AAB0000000000000001", "status": "okay" }, { "driveRef": "010000005000C5007EDBE3C70000000000000001", "status": "okay" }] }) ]): firmware_object.upgrade() self.assertFalse(firmware_object.upgrade_in_progress)
def test_upgrade_fail(self): """Verify upgrade method exceptions.""" self._set_args({ "firmware": ["path_to_test_drive_firmware_1", "path_to_test_drive_firmware_2"] }) firmware_object = NetAppESeriesDriveFirmware() with self.assertRaisesRegexp(AnsibleFailJson, "Failed to upgrade drive firmware."): with mock.patch(self.REQUEST_FUNC, return_value=Exception()): firmware_object.upgrade()