- d = defer.succeed(None)
- for offset in suspects:
- new_data = letters.next()*2 # "AA", then "BB", etc
- expected = expected[:offset]+new_data+expected[offset+2:]
- d.addCallback(lambda ign:
- self.mdmf_max_shares_node.get_best_mutable_version())
- def _modify(mv, offset=offset, new_data=new_data):
- # close over 'offset','new_data'
- md = MutableData(new_data)
- return mv.update(md, offset)
- d.addCallback(_modify)
- d.addCallback(lambda ignored:
- self.mdmf_max_shares_node.download_best_version())
- d.addCallback(self._check_differences, expected)
- return d
+ d0 = self.do_upload_mdmf()
+ def _run(ign):
+ expected = self.data
+ d = defer.succeed(None)
+ for offset in suspects:
+ new_data = letters.next()*2 # "AA", then "BB", etc
+ expected = expected[:offset]+new_data+expected[offset+2:]
+ d.addCallback(lambda ign:
+ self.mdmf_max_shares_node.get_best_mutable_version())
+ def _modify(mv, offset=offset, new_data=new_data):
+ # close over 'offset','new_data'
+ md = MutableData(new_data)
+ return mv.update(md, offset)
+ d.addCallback(_modify)
+ d.addCallback(lambda ignored:
+ self.mdmf_max_shares_node.download_best_version())
+ d.addCallback(self._check_differences, expected)
+ return d
+ d0.addCallback(_run)
+ return d0