Mercurial > hg
view tests/test-storage.py @ 39794:4f44f747f094
hgweb: use scmutil.binnode() to translate None to wdir hash (issue5988)
I left some of ctx.node() calls unchanged as they seemed unlikely to be
workingctx, or passed to diff functions where None is the default value.
Note that a None revision can also cause a similar problem, but I'm not sure
if we can simply bulk-replace ctx.rev() with scmutil.intrev(ctx) as there's
large hole between tip revision and wdir revision. If such pair were passed
in to xrange() for example, we would waste CPU time.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sun, 23 Sep 2018 16:11:01 +0900 |
parents | ae531f5e583c |
children | a3a9b93bff80 |
line wrap: on
line source
# This test verifies the conformance of various classes to various # storage interfaces. from __future__ import absolute_import import silenttestrunner from mercurial import ( filelog, transaction, ui as uimod, vfs as vfsmod, ) from mercurial.testing import ( storage as storagetesting, ) STATE = { 'lastindex': 0, 'ui': uimod.ui(), 'vfs': vfsmod.vfs(b'.', realpath=True), } def makefilefn(self): """Factory for filelog instances.""" fl = filelog.filelog(STATE['vfs'], 'filelog-%d' % STATE['lastindex']) STATE['lastindex'] += 1 return fl def maketransaction(self): vfsmap = {'plain': STATE['vfs']} return transaction.transaction(STATE['ui'].warn, STATE['vfs'], vfsmap, 'journal', 'undo') # Assigning module-level attributes that inherit from unittest.TestCase # is all that is needed to register tests. filelogindextests = storagetesting.makeifileindextests(makefilefn, maketransaction) filelogdatatests = storagetesting.makeifiledatatests(makefilefn, maketransaction) filelogmutationtests = storagetesting.makeifilemutationtests(makefilefn, maketransaction) if __name__ == '__main__': silenttestrunner.main(__name__)