tests/simplestorerepo.py
changeset 39866 e23c03dc5cf9
parent 39860 d9b3cc3d5d07
child 39867 4b816a83e17e
equal deleted inserted replaced
39865:31b7e8e7132e 39866:e23c03dc5cf9
   508         node2 = self.node(rev2)
   508         node2 = self.node(rev2)
   509 
   509 
   510         return mdiff.textdiff(self.revision(node1, raw=True),
   510         return mdiff.textdiff(self.revision(node1, raw=True),
   511                               self.revision(node2, raw=True))
   511                               self.revision(node2, raw=True))
   512 
   512 
   513     def emitrevisiondeltas(self, requests):
       
   514         for request in requests:
       
   515             node = request.node
       
   516             rev = self.rev(node)
       
   517 
       
   518             if request.basenode == nullid:
       
   519                 baserev = nullrev
       
   520             elif request.basenode is not None:
       
   521                 baserev = self.rev(request.basenode)
       
   522             else:
       
   523                 # This is a test extension and we can do simple things
       
   524                 # for choosing a delta parent.
       
   525                 baserev = self.deltaparent(rev)
       
   526 
       
   527                 if baserev != nullrev and not self._candelta(baserev, rev):
       
   528                     baserev = nullrev
       
   529 
       
   530             revision = None
       
   531             delta = None
       
   532             baserevisionsize = None
       
   533 
       
   534             if self.iscensored(baserev) or self.iscensored(rev):
       
   535                 try:
       
   536                     revision = self.revision(node, raw=True)
       
   537                 except error.CensoredNodeError as e:
       
   538                     revision = e.tombstone
       
   539 
       
   540                 if baserev != nullrev:
       
   541                     baserevisionsize = self.rawsize(baserev)
       
   542 
       
   543             elif baserev == nullrev:
       
   544                 revision = self.revision(node, raw=True)
       
   545             else:
       
   546                 delta = self.revdiff(baserev, rev)
       
   547 
       
   548             extraflags = revlog.REVIDX_ELLIPSIS if request.ellipsis else 0
       
   549 
       
   550             yield simplestorerevisiondelta(
       
   551                 node=node,
       
   552                 p1node=request.p1node,
       
   553                 p2node=request.p2node,
       
   554                 linknode=request.linknode,
       
   555                 basenode=self.node(baserev),
       
   556                 flags=self.flags(rev) | extraflags,
       
   557                 baserevisionsize=baserevisionsize,
       
   558                 revision=revision,
       
   559                 delta=delta)
       
   560 
       
   561     def heads(self, start=None, stop=None):
   513     def heads(self, start=None, stop=None):
   562         # This is copied from revlog.py.
   514         # This is copied from revlog.py.
   563         if start is None and stop is None:
   515         if start is None and stop is None:
   564             if not len(self):
   516             if not len(self):
   565                 return [nullid]
   517                 return [nullid]