test-revlog.t
53 lines
| 1.4 KiB
| text/troff
|
Tads3Lexer
/ tests / test-revlog.t
|
r32390 | $ hg init empty-repo | ||
$ cd empty-repo | ||||
Flags on revlog version 0 are rejected | ||||
>>> with open('.hg/store/00changelog.i', 'wb') as fh: | ||||
|
r38091 | ... fh.write(b'\x00\x01\x00\x00') and None | ||
|
r32390 | |||
$ hg log | ||||
|
r46518 | abort: unknown flags (0x01) in version 0 revlog 00changelog.i | ||
|
r46732 | [50] | ||
|
r32390 | |||
Unknown flags on revlog version 1 are rejected | ||||
>>> with open('.hg/store/00changelog.i', 'wb') as fh: | ||||
|
r38091 | ... fh.write(b'\x00\x04\x00\x01') and None | ||
|
r32390 | |||
$ hg log | ||||
|
r46518 | abort: unknown flags (0x04) in version 1 revlog 00changelog.i | ||
|
r46732 | [50] | ||
|
r32390 | |||
Unknown version is rejected | ||||
>>> with open('.hg/store/00changelog.i', 'wb') as fh: | ||||
|
r47438 | ... fh.write(b'\x00\x00\xbe\xef') and None | ||
|
r32390 | |||
$ hg log | ||||
|
r47438 | abort: unknown version (48879) in revlog 00changelog.i | ||
|
r46732 | [50] | ||
|
r32390 | |||
$ cd .. | ||||
|
r28656 | Test for CVE-2016-3630 | ||
$ hg init | ||||
|
r40317 | >>> import codecs | ||
>>> open("a.i", "wb").write(codecs.decode(codecs.decode( | ||||
|
r36502 | ... b"""eJxjYGZgZIAAYQYGxhgom+k/FMx8YKx9ZUaKSOyqo4cnuKb8mbqHV5cBCVTMWb1Cwqkhe4Gsg9AD | ||
|
r40317 | ... Joa3dYtcYYYBAQ8Qr4OqZAYRICPTSr5WKd/42rV36d+8/VmrNpv7NP1jQAXrQE4BqQUARngwVA==""", | ||
... "base64"), "zlib")) and None | ||||
|
r28656 | |||
|
r39318 | $ hg debugrevlogindex a.i | ||
|
r37301 | rev linkrev nodeid p1 p2 | ||
0 2 99e0332bd498 000000000000 000000000000 | ||||
1 3 6674f57a23d8 99e0332bd498 000000000000 | ||||
|
r39316 | |||
>>> from mercurial import revlog, vfs | ||||
>>> tvfs = vfs.vfs(b'.') | ||||
>>> tvfs.options = {b'revlogv1': True} | ||||
>>> rl = revlog.revlog(tvfs, b'a.i') | ||||
>>> rl.revision(1) | ||||
|
r40317 | mpatchError(*'patch cannot be decoded'*) (glob) | ||