##// END OF EJS Templates
revlog: subclass the new `repository.iverifyproblem` Protocol class...
revlog: subclass the new `repository.iverifyproblem` Protocol class This is the same transformation as 3a90a6fd710d did for dirstate, but the CamelCase naming was already cleaned up here. We shouldn't have to explicitly subclass, but I'm doing so to test the interplay of regular attributes and the `attrs` class. Also, PyCharm has a nifty feature that puts a jump point in the gutter to navigate back and forth between the base class and subclasses (and override functions and base class functions) when there's an explicit subclassing. Additionally, PyCharm will immediately flag signature mismatches without a 40m pytype run.

File last commit:

r49730:6000f5b2 default
r53365:4ef6dbc2 default
Show More
revlog-formatv0.py
73 lines | 2.0 KiB | text/x-python | PythonLexer
/ tests / revlog-formatv0.py
Gregory Szorc
global: use python3 in shebangs...
r46434 #!/usr/bin/env python3
Thomas Arendsen Hein
verify: fix "missing revlog!" errors for revlog format v0 and add test...
r12170 # Copyright 2010 Intevation GmbH
# Author(s):
# Thomas Arendsen Hein <thomas@intevation.de>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
"""Create a Mercurial repository in revlog format 0
changeset: 0:a1ef0b125355
tag: tip
user: user
date: Thu Jan 01 00:00:00 1970 +0000
files: empty
description:
empty file
"""
Augie Fackler
tests: port helper script revlog-formatv0.py to python 3...
r36583 import binascii
Robert Stanca
py3: use absolute_import in revlog-formatv0.py
r28945 import os
import sys
Thomas Arendsen Hein
verify: fix "missing revlog!" errors for revlog format v0 and add test...
r12170
files = [
Augie Fackler
formatting: blacken the codebase...
r43346 (
b'formatv0/.hg/00changelog.i',
b'000000000000004400000000000000000000000000000000000000'
b'000000000000000000000000000000000000000000000000000000'
b'0000a1ef0b125355d27765928be600cfe85784284ab3',
),
(
b'formatv0/.hg/00changelog.d',
b'756163613935613961356635353036303562366138343738336237'
b'61623536363738616436356635380a757365720a3020300a656d70'
b'74790a0a656d7074792066696c65',
),
(
b'formatv0/.hg/00manifest.i',
b'000000000000003000000000000000000000000000000000000000'
b'000000000000000000000000000000000000000000000000000000'
b'0000aca95a9a5f550605b6a84783b7ab56678ad65f58',
),
(
b'formatv0/.hg/00manifest.d',
b'75656d707479006238306465356431333837353835343163356630'
b'35323635616431343461623966613836643164620a',
),
(
b'formatv0/.hg/data/empty.i',
b'000000000000000000000000000000000000000000000000000000'
b'000000000000000000000000000000000000000000000000000000'
b'0000b80de5d138758541c5f05265ad144ab9fa86d1db',
),
(b'formatv0/.hg/data/empty.d', b''),
Thomas Arendsen Hein
verify: fix "missing revlog!" errors for revlog format v0 and add test...
r12170 ]
Augie Fackler
formatting: blacken the codebase...
r43346
Thomas Arendsen Hein
verify: fix "missing revlog!" errors for revlog format v0 and add test...
r12170 def makedirs(name):
"""recursive directory creation"""
parent = os.path.dirname(name)
if parent:
makedirs(parent)
os.mkdir(name)
Augie Fackler
formatting: blacken the codebase...
r43346
Thomas Arendsen Hein
verify: fix "missing revlog!" errors for revlog format v0 and add test...
r12170 makedirs(os.path.join(*'formatv0/.hg/data'.split('/')))
for name, data in files:
f = open(name, 'wb')
Augie Fackler
tests: port helper script revlog-formatv0.py to python 3...
r36583 f.write(binascii.unhexlify(data))
Thomas Arendsen Hein
verify: fix "missing revlog!" errors for revlog format v0 and add test...
r12170 f.close()
sys.exit(0)