示例#1
0
    def test_save_snapshot_should_fail_if_snaphost_exists(self):
        vm = Mock()

        pyvmomi_service = Mock()
        pyvmomi_service.find_by_uuid = Mock(return_value=vm)

        save_snapshot_command = SaveSnapshotCommand(pyvmomi_service, Mock())
        si = Mock()

        with patch(GET_CURRENT_SNAPSHOT_NAME) as get_current_snapshot_name:
            with patch(GET_VM_SNAPSHOTS) as get_vm_snapshots:
                get_current_snapshot_name.return_value = 'snapshot1'
                get_vm_snapshots.return_value = {
                    'snapshot1': None,
                    'snapshot1/snapshot2': None
                }

                # Act + Assert
                with self.assertRaises(SnapshotAlreadyExistsException):
                    save_snapshot_command.save_snapshot(
                        si=si,
                        logger=Mock(),
                        vm_uuid='machine1',
                        snapshot_name='snapshot2',
                        save_memory='No')
示例#2
0
    def test_save_snapshot_should_succeed_when_snapshot_with_the_same_name_does_not_exists(
            self):
        vm = Mock()

        pyvmomi_service = Mock()
        pyvmomi_service.find_by_uuid = Mock(return_value=vm)

        save_snapshot_command = SaveSnapshotCommand(pyvmomi_service, Mock())
        si = Mock()

        # Act
        with patch(GET_CURRENT_SNAPSHOT_NAME) as get_current_snapshot_name:
            with patch(GET_VM_SNAPSHOTS) as get_vm_snapshots:
                get_current_snapshot_name.return_value = 'snapshot1/snapshot2'
                get_vm_snapshots.return_value = {
                    'snapshot1/snapshot2': None,
                    'snapshot1': None
                }
                save_snapshot_command.save_snapshot(
                    si=si,
                    logger=Mock(),
                    vm_uuid='machine1',
                    snapshot_name='new_snapshot',
                    save_memory='No')

        # Assert
        vm.CreateSnapshot.called_with('new_snapshot',
                                      'Created by CloudShell vCenterShell',
                                      False, True)
    def test_save_snapshot_should_fail_if_snaphost_exists(self):
        vm = Mock()

        pyvmomi_service = Mock()
        pyvmomi_service.find_by_uuid = Mock(return_value=vm)

        save_snapshot_command = SaveSnapshotCommand(pyvmomi_service, Mock())
        si = Mock()

        with patch(GET_CURRENT_SNAPSHOT_NAME) as get_current_snapshot_name:
            with patch(GET_VM_SNAPSHOTS) as get_vm_snapshots:
                    get_current_snapshot_name.return_value = 'snapshot1'
                    get_vm_snapshots.return_value = {'snapshot1': None, 'snapshot1/snapshot2': None}

                    # Act + Assert
                    with self.assertRaises(SnapshotAlreadyExistsException):
                        save_snapshot_command.save_snapshot(si=si,
                                                            logger=Mock(),
                                                            vm_uuid='machine1',
                                                            snapshot_name='snapshot2')
    def test_save_snapshot_should_succeed_when_snapshot_with_the_same_name_does_not_exists(self):
        vm = Mock()

        pyvmomi_service = Mock()
        pyvmomi_service.find_by_uuid = Mock(return_value=vm)

        save_snapshot_command = SaveSnapshotCommand(pyvmomi_service, Mock())
        si = Mock()

        # Act
        with patch(GET_CURRENT_SNAPSHOT_NAME) as get_current_snapshot_name:
            with patch(GET_VM_SNAPSHOTS) as get_vm_snapshots:
                get_current_snapshot_name.return_value = 'snapshot1/snapshot2'
                get_vm_snapshots.return_value = {'snapshot1/snapshot2': None, 'snapshot1': None}
                save_snapshot_command.save_snapshot(si=si,
                                                    logger=Mock(),
                                                    vm_uuid='machine1',
                                                    snapshot_name='new_snapshot')

        # Assert
        vm.CreateSnapshot.called_with('new_snapshot', 'Created by CloudShell vCenterShell', False, True)