693
693
self.assertEqual('UNKNOWN', replicator.extract_device(
694
694
'/some/foo/some_device/deeper/and/deeper'))
696
# def test_dispatch(self):
697
# rpc = db_replicator.ReplicatorRpc('/', '/', FakeBroker, False)
698
# no_op = lambda *args, **kwargs: True
699
# self.assertEquals(rpc.dispatch(('drv', 'part', 'hash'), ('op',)
701
# rpc.mount_check = True
702
# self.assertEquals(rpc.dispatch(('drv', 'part', 'hash'), ['op',]
704
# rpc.mount_check = False
705
# rpc.rsync_then_merge = lambda drive, db_file,
706
# args: self.assertEquals(args, ['test1'])
707
# rpc.complete_rsync = lambda drive, db_file,
708
# args: self.assertEquals(args, ['test2'])
709
# rpc.dispatch(('drv', 'part', 'hash'), ['rsync_then_merge','test1'])
710
# rpc.dispatch(('drv', 'part', 'hash'), ['complete_rsync','test2'])
711
# rpc.dispatch(('drv', 'part', 'hash'), ['other_op',])
713
696
def test_dispatch_no_arg_pop(self):
714
697
rpc = db_replicator.ReplicatorRpc('/', '/', FakeBroker, False)
715
698
response = rpc.dispatch(('a',), 'arg')
1351
1334
if node['device'] == broker_device:
1352
1335
return part, node
1354
def _run_once(self, node, conf_updates=None, daemon=None):
1337
def _get_daemon(self, node, conf_updates):
1356
1339
'devices': self.root,
1357
1340
'recon_cache_path': self.root,
1361
1344
if conf_updates:
1362
1345
conf.update(conf_updates)
1363
daemon = daemon or self.replicator_daemon(conf, logger=self.logger)
1346
return self.replicator_daemon(conf, logger=self.logger)
1348
def _run_once(self, node, conf_updates=None, daemon=None):
1349
daemon = daemon or self._get_daemon(node, conf_updates)
1365
1351
def _rsync_file(db_file, remote_file, **kwargs):
1366
1352
remote_server, remote_path = remote_file.split('/', 1)