--- a/tests/test-storage.py Sat Oct 05 10:29:34 2019 -0400
+++ b/tests/test-storage.py Sun Oct 06 09:45:02 2019 -0400
@@ -13,19 +13,16 @@
vfs as vfsmod,
)
-from mercurial.testing import (
- storage as storagetesting,
-)
+from mercurial.testing import storage as storagetesting
try:
- from hgext import (
- sqlitestore,
- )
+ from hgext import sqlitestore
except ImportError:
sqlitestore = None
try:
import sqlite3
+
if sqlite3.sqlite_version_info < (3, 8, 3):
# WITH clause not supported
sqlitestore = None
@@ -34,6 +31,7 @@
try:
from mercurial import zstd
+
zstd.__version__
except ImportError:
zstd = None
@@ -44,20 +42,36 @@
'vfs': vfsmod.vfs(b'.', realpath=True),
}
+
def makefilefn(self):
"""Factory for filelog instances."""
fl = filelog.filelog(STATE['vfs'], b'filelog-%d' % STATE['lastindex'])
STATE['lastindex'] += 1
return fl
+
def maketransaction(self):
vfsmap = {b'plain': STATE['vfs'], b'store': STATE['vfs']}
- return transaction.transaction(STATE['ui'].warn, STATE['vfs'], vfsmap,
- b'journal', b'undo')
+ return transaction.transaction(
+ STATE['ui'].warn, STATE['vfs'], vfsmap, b'journal', b'undo'
+ )
+
-def addrawrevision(self, fl, tr, node, p1, p2, linkrev, rawtext=None,
- delta=None, censored=False, ellipsis=False, extstored=False):
+def addrawrevision(
+ self,
+ fl,
+ tr,
+ node,
+ p1,
+ p2,
+ linkrev,
+ rawtext=None,
+ delta=None,
+ censored=False,
+ ellipsis=False,
+ extstored=False,
+):
flags = 0
if censored:
@@ -70,8 +84,9 @@
if rawtext is not None:
fl._revlog.addrawrevision(rawtext, tr, linkrev, p1, p2, node, flags)
elif delta is not None:
- fl._revlog.addrawrevision(rawtext, tr, linkrev, p1, p2, node, flags,
- cachedelta=delta)
+ fl._revlog.addrawrevision(
+ rawtext, tr, linkrev, p1, p2, node, flags, cachedelta=delta
+ )
else:
raise error.Abort('must supply rawtext or delta arguments')
@@ -79,17 +94,19 @@
# bypass hash verification.
fl._revlog.clearcaches()
+
# Assigning module-level attributes that inherit from unittest.TestCase
# is all that is needed to register tests.
-filelogindextests = storagetesting.makeifileindextests(makefilefn,
- maketransaction,
- addrawrevision)
-filelogdatatests = storagetesting.makeifiledatatests(makefilefn,
- maketransaction,
- addrawrevision)
-filelogmutationtests = storagetesting.makeifilemutationtests(makefilefn,
- maketransaction,
- addrawrevision)
+filelogindextests = storagetesting.makeifileindextests(
+ makefilefn, maketransaction, addrawrevision
+)
+filelogdatatests = storagetesting.makeifiledatatests(
+ makefilefn, maketransaction, addrawrevision
+)
+filelogmutationtests = storagetesting.makeifilemutationtests(
+ makefilefn, maketransaction, addrawrevision
+)
+
def makesqlitefile(self):
path = STATE['vfs'].join(b'db-%d.db' % STATE['lastindex'])
@@ -101,33 +118,51 @@
return sqlitestore.sqlitefilestore(db, b'dummy-path', compression)
-def addrawrevisionsqlite(self, fl, tr, node, p1, p2, linkrev, rawtext=None,
- delta=None, censored=False, ellipsis=False,
- extstored=False):
+
+def addrawrevisionsqlite(
+ self,
+ fl,
+ tr,
+ node,
+ p1,
+ p2,
+ linkrev,
+ rawtext=None,
+ delta=None,
+ censored=False,
+ ellipsis=False,
+ extstored=False,
+):
flags = 0
if censored:
flags |= sqlitestore.FLAG_CENSORED
if ellipsis | extstored:
- raise error.Abort(b'support for ellipsis and extstored flags not '
- b'supported')
+ raise error.Abort(
+ b'support for ellipsis and extstored flags not ' b'supported'
+ )
if rawtext is not None:
fl._addrawrevision(node, rawtext, tr, linkrev, p1, p2, flags=flags)
elif delta is not None:
- fl._addrawrevision(node, rawtext, tr, linkrev, p1, p2,
- storedelta=delta, flags=flags)
+ fl._addrawrevision(
+ node, rawtext, tr, linkrev, p1, p2, storedelta=delta, flags=flags
+ )
else:
raise error.Abort(b'must supply rawtext or delta arguments')
+
if sqlitestore is not None:
sqlitefileindextests = storagetesting.makeifileindextests(
- makesqlitefile, maketransaction, addrawrevisionsqlite)
+ makesqlitefile, maketransaction, addrawrevisionsqlite
+ )
sqlitefiledatatests = storagetesting.makeifiledatatests(
- makesqlitefile, maketransaction, addrawrevisionsqlite)
+ makesqlitefile, maketransaction, addrawrevisionsqlite
+ )
sqlitefilemutationtests = storagetesting.makeifilemutationtests(
- makesqlitefile, maketransaction, addrawrevisionsqlite)
+ makesqlitefile, maketransaction, addrawrevisionsqlite
+ )
if __name__ == '__main__':
silenttestrunner.main(__name__)