mirror of
https://github.com/facebook/sapling.git
synced 2024-10-06 14:58:03 +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
75 lines
1.6 KiB
Perl
75 lines
1.6 KiB
Perl
#require py2
|
|
#chg-compatible
|
|
|
|
$ disable treemanifest
|
|
Corrupt an hg repo with two pulls.
|
|
create one repo with a long history
|
|
|
|
$ hg init source1
|
|
$ cd source1
|
|
$ touch foo
|
|
$ hg add foo
|
|
$ for i in 1 2 3 4 5 6 7 8 9 10; do
|
|
> echo $i >> foo
|
|
> hg ci -m $i
|
|
> done
|
|
$ cd ..
|
|
|
|
create one repo with a shorter history
|
|
|
|
$ hg clone -r 0 source1 source2
|
|
adding changesets
|
|
adding manifests
|
|
adding file changes
|
|
added 1 changesets with 1 changes to 1 files
|
|
updating to branch default
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
$ cd source2
|
|
$ echo a >> foo
|
|
$ hg ci -m a
|
|
$ cd ..
|
|
|
|
create a third repo to pull both other repos into it
|
|
|
|
$ hg init corrupted
|
|
$ cd corrupted
|
|
|
|
use a hook to make the second pull start while the first one is still running
|
|
|
|
$ echo '[hooks]' >> .hg/hgrc
|
|
$ echo 'prechangegroup = sleep 5' >> .hg/hgrc
|
|
|
|
start a pull...
|
|
|
|
$ hg pull ../source1 > pull.out 2>&1 &
|
|
|
|
... and start another pull before the first one has finished
|
|
|
|
$ sleep 1
|
|
$ hg pull ../source2 2>/dev/null
|
|
pulling from ../source2
|
|
searching for changes
|
|
adding changesets
|
|
adding manifests
|
|
adding file changes
|
|
added 1 changesets with 1 changes to 1 files
|
|
$ cat pull.out
|
|
pulling from ../source1
|
|
requesting all changes
|
|
adding changesets
|
|
adding manifests
|
|
adding file changes
|
|
added 10 changesets with 10 changes to 1 files
|
|
|
|
see the result
|
|
|
|
$ wait
|
|
$ hg verify
|
|
checking changesets
|
|
checking manifests
|
|
crosschecking files in changesets and manifests
|
|
checking files
|
|
1 files, 11 changesets, 11 total revisions
|
|
|
|
$ cd ..
|