mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 16:57:49 +03:00
92f6f35e7a
Summary: This diff marks **ALL** mercurial tests requiring Python 2 feature. After you fixes some tests, simply remove the `py2` feature requirement and that tests will be continuously run after your diff is landed. To bypass this feature requirement, run the tests command with `HGTEST_FORCE_PY2=1`. For example: ``` HGTEST_FORCE_PY2=1 buck test //eden/scm/tests:hg_run_tests ``` or ``` HGTEST_FORCE_PY2=1 python run-tests.py ``` ---- Basically this diff are created with the following commands: ``` $ sed -i 's/import feature\(.*\)$/import feature\1\n\nfeature.require(["py2"])/' test-*-t.py $ sed -i '1s/^/#require py2\n/' test-*.t $ ls | grep -P "^test.*(?<\!-t)\.py$" > list && vim -p $(cat list) # manually adding feature requires for these Python tests. ``` (Note: this ignores all push blocking failures!) ignore-conflict-markers Reviewed By: singhsrb Differential Revision: D19655148 fbshipit-source-id: 985e3ccb4010cc559049f1d89f8909bc2d9b5e20
51 lines
1.3 KiB
Perl
51 lines
1.3 KiB
Perl
#require py2
|
|
#chg-compatible
|
|
|
|
$ hg init empty-repo
|
|
$ cd empty-repo
|
|
|
|
Flags on revlog version 0 are rejected
|
|
|
|
>>> with open('.hg/store/00changelog.i', 'wb') as fh:
|
|
... fh.write('\x00\x01\x00\x00')
|
|
|
|
$ hg log
|
|
abort: repo is corrupted: 00changelog.i
|
|
[255]
|
|
|
|
Unknown flags on revlog version 1 are rejected
|
|
|
|
>>> with open('.hg/store/00changelog.i', 'wb') as fh:
|
|
... fh.write('\x00\x04\x00\x01')
|
|
|
|
$ hg log
|
|
abort: unknown flags (0x04) in version 1 revlog 00changelog.i!
|
|
[255]
|
|
|
|
Unknown version is rejected
|
|
|
|
>>> with open('.hg/store/00changelog.i', 'wb') as fh:
|
|
... fh.write('\x00\x00\x00\x02')
|
|
|
|
$ hg log
|
|
abort: unknown version (2) in revlog 00changelog.i!
|
|
[255]
|
|
|
|
$ cd ..
|
|
|
|
Test for CVE-2016-3630
|
|
|
|
$ hg init
|
|
|
|
>>> open("a.i", "w").write(
|
|
... """eJxjYGZgZIAAYQYGxhgom+k/FMx8YKx9ZUaKSOyqo4cnuKb8mbqHV5cBCVTMWb1Cwqkhe4Gsg9AD
|
|
... Joa3dYtcYYYBAQ8Qr4OqZAYRICPTSr5WKd/42rV36d+8/VmrNpv7NP1jQAXrQE4BqQUARngwVA=="""
|
|
... .decode("base64").decode("zlib"))
|
|
|
|
$ hg debugindex a.i
|
|
rev offset length delta linkrev nodeid p1 p2
|
|
0 0 19 -1 2 99e0332bd498 000000000000 000000000000
|
|
1 19 12 0 3 6674f57a23d8 99e0332bd498 000000000000
|
|
$ hg debugdata a.i 1 2>&1 | egrep 'Error:.*decoded'
|
|
(mercurial\.\w+\.mpatch\.)?mpatchError: patch cannot be decoded (re)
|