def __init__(self): description = ( 'Simple Multi-Volume file copy tool. You will be prompted to replace device ' 'when the medium is full. (ex: multivolumecopy /path/src -o /path/dst)' ) self.options = copyoptions.CopyOptions() self.parser = argparse.ArgumentParser(description=description) self._setup_parser()
def setup(self): self.options = copyoptions.CopyOptions() self.options.output = '/dst' self.options.size_unit = 'K' copyfiles = self.gen_copyfiles(['a.txt', 'b.txt', 'c.txt']) self.results = verifier.VerifyResults(copyfiles, self.options) self.results.device_capacity_bytes = 4096 self.results.backup_bytes = 3000 self.results.copied_bytes = 3072
def setup(self): # don't resolve/reconcile using real files, # and do not start any worker processes self.options = copyoptions.CopyOptions() self.resolver = MockResolver(self.options) self.reconciler = MockReconciler(self.resolver, self.options) self.copier = multiprocesscopier.MultiProcessCopier(self.resolver, self.options, self.reconciler) self.copier.manager = mock.Mock() self.copier.prompt = mock.Mock() self.options.output = '/dst'
def setup(self): self.copyfiles = tuple([ copyfile.CopyFile(src='/src/0.txt', dst='/dst/0.txt', relpath='0.txt', bytes=1024, index=0), copyfile.CopyFile(src='/src/a/1.txt', dst='/dst/a/1.txt', relpath='a/1.txt', bytes=1024, index=1), copyfile.CopyFile(src='/src/a/2.txt', dst='/dst/a/2.txt', relpath='a/2.txt', bytes=1024, index=2), ]) self.resolver = mock.Mock() self.options = copyoptions.CopyOptions() self.options.output = '/dst'
def __init__(self, resolver, options=None): """ Args: source (resolver.Resolver): Resolver, determines files to be copied. output (str): ``(ex: '/mnt/backup' )`` The directory you'd like to backup to. options (CopyOptions, None): Options to use while performing copy """ self._resolver = resolver self._options = options or copyoptions.CopyOptions() super(Copier, self).__init__()
def setup(self): self.joblist = [MockResolver.FILE_A] self.started_queue = multiprocessing.Queue() self.completed_queue = multiprocessing.Queue() self.error_queue = multiprocessing.Queue() self.device_full_lock = multiprocessing.Event() self.options = copyoptions.CopyOptions() self.options.output = '/dst' self.worker = multiprocesscopier._MultiProcessCopierWorker( self.joblist, self.started_queue, self.completed_queue, self.error_queue, self.device_full_lock, self.options, maxtasks=3, )
def setup(self): self.joblist = [MockResolver.FILE_A] self.started_queue = multiprocessing.Queue() self.completed_queue = multiprocessing.Queue() self.error_queue = multiprocessing.Queue() self.device_full_lock = multiprocessing.Lock() self.options = copyoptions.CopyOptions() self.options.output = '/dst' self.options.num_workers = 3 self.manager = multiprocesscopier._MultiProcessCopierWorkerManager( self.joblist, self.started_queue, self.completed_queue, self.error_queue, self.device_full_lock, self.options )
def setup(self): self.options = copyoptions.CopyOptions() self.options.output = '/dst' self.resolver = directorylistresolver.DirectoryListResolver( ['/src'], self.options)
def setup(self): self.options = copyoptions.CopyOptions() self.options.dst = '/dst'
def test_device_padding_converted_to_bytes(self, provided_value, saved_value): options = copyoptions.CopyOptions() options.device_padding = provided_value assert options.device_padding == saved_value
def test_num_workers_defaults_to_avail_cpus_minus_one_if_multi_cpu(self): with mock.patch('multiprocessing.cpu_count', return_value=4): options = copyoptions.CopyOptions() assert options.num_workers == 2
def test_num_workers_defaults_to_one_if_only_one_cpu(self): with mock.patch('multiprocessing.cpu_count', return_value=1): options = copyoptions.CopyOptions() assert options.num_workers == 1
def setup(self): options = copyoptions.CopyOptions() options.output = '/dst' self.resolver = FakeResolver([], options) self.verifier = verifier.Verifier(self.resolver, options)