def METHOD_NAME(self):
    """
    We find *external* VMs to recover through libvirt,
    but Vdsm fail to create its Vm objects.
    We should then destroy the non-external VMs.
    """
    vm_infos = (('a', True), ('b', False),)
    self.conn.domains = _make_domains_collection(vm_infos)
    with MonkeyPatchScope([
        (self.cif, 'createVm', _error)
    ]):
        recovery.all_domains(self.cif)
    assert self.cif.vmRequests == \
        {}
    for vm_id, vm_is_ext in vm_infos:
        vm_obj = self.conn.domains[vm_id]
        expect_destroy = not vm_is_ext
        assert vm_obj.destroyed == expect_destroy