mirror of
https://github.com/facebook/sapling.git
synced 2024-12-26 22:47:26 +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
200 lines
5.6 KiB
Perl
200 lines
5.6 KiB
Perl
#require py2
|
|
#chg-compatible
|
|
|
|
$ enable churn
|
|
|
|
create test repository
|
|
|
|
$ hg init repo
|
|
$ cd repo
|
|
$ echo a > a
|
|
$ hg ci -Am adda -u user1 -d 6:00
|
|
adding a
|
|
$ echo b >> a
|
|
$ echo b > b
|
|
$ hg ci -m changeba -u user2 -d 9:00 a
|
|
$ hg ci -Am addb -u user2 -d 9:30
|
|
adding b
|
|
$ echo c >> a
|
|
$ echo c >> b
|
|
$ echo c > c
|
|
$ hg ci -m changeca -u user3 -d 12:00 a
|
|
$ hg ci -m changecb -u user3 -d 12:15 b
|
|
$ hg ci -Am addc -u user3 -d 12:30
|
|
adding c
|
|
$ mkdir -p d/e
|
|
$ echo abc > d/e/f1.txt
|
|
$ hg ci -Am "add d/e/f1.txt" -u user1 -d 12:45 d/e/f1.txt
|
|
$ mkdir -p d/g
|
|
$ echo def > d/g/f2.txt
|
|
$ hg ci -Am "add d/g/f2.txt" -u user1 -d 13:00 d/g/f2.txt
|
|
|
|
|
|
churn separate directories
|
|
|
|
$ cd d
|
|
$ hg churn e
|
|
user1 1 ***************************************************************
|
|
|
|
churn all
|
|
|
|
$ hg churn
|
|
user1 3 ***************************************************************
|
|
user3 3 ***************************************************************
|
|
user2 2 ******************************************
|
|
|
|
churn excluding one dir
|
|
|
|
$ hg churn -X e
|
|
user3 3 ***************************************************************
|
|
user1 2 ******************************************
|
|
user2 2 ******************************************
|
|
|
|
churn up to rev 2
|
|
|
|
$ hg churn -r :2
|
|
user2 2 ***************************************************************
|
|
user1 1 ********************************
|
|
$ cd ..
|
|
|
|
churn with aliases
|
|
|
|
$ cat > ../aliases <<EOF
|
|
> user1 alias1
|
|
> user3 alias3
|
|
> not-an-alias
|
|
> EOF
|
|
|
|
churn with .hgchurn
|
|
|
|
$ mv ../aliases .hgchurn
|
|
$ hg churn
|
|
skipping malformed alias: not-an-alias
|
|
alias1 3 **************************************************************
|
|
alias3 3 **************************************************************
|
|
user2 2 *****************************************
|
|
$ rm .hgchurn
|
|
|
|
churn with column specifier
|
|
|
|
$ COLUMNS=40 hg churn
|
|
user1 3 ***********************
|
|
user3 3 ***********************
|
|
user2 2 ***************
|
|
|
|
churn by hour
|
|
|
|
$ hg churn -f '%H' -s
|
|
06 1 *****************
|
|
09 2 *********************************
|
|
12 4 ******************************************************************
|
|
13 1 *****************
|
|
|
|
|
|
churn with separated added/removed lines
|
|
|
|
$ hg rm d/g/f2.txt
|
|
$ hg ci -Am "removed d/g/f2.txt" -u user1 -d 14:00 d/g/f2.txt
|
|
$ hg churn --diffstat
|
|
user1 +3/-1 +++++++++++++++++++++++++++++++++++++++++--------------
|
|
user3 +3/-0 +++++++++++++++++++++++++++++++++++++++++
|
|
user2 +2/-0 +++++++++++++++++++++++++++
|
|
|
|
churn --diffstat with color
|
|
|
|
$ hg --config extensions.color= churn --config color.mode=ansi \
|
|
> --diffstat --color=always
|
|
user1 +3/-1 \x1b[0;32m+++++++++++++++++++++++++++++++++++++++++\x1b[0m\x1b[0;31m--------------\x1b[0m (esc)
|
|
user3 +3/-0 \x1b[0;32m+++++++++++++++++++++++++++++++++++++++++\x1b[0m (esc)
|
|
user2 +2/-0 \x1b[0;32m+++++++++++++++++++++++++++\x1b[0m (esc)
|
|
|
|
|
|
changeset number churn
|
|
|
|
$ hg churn -c
|
|
user1 4 ***************************************************************
|
|
user3 3 ***********************************************
|
|
user2 2 ********************************
|
|
|
|
$ echo 'with space = no-space' >> ../aliases
|
|
$ echo a >> a
|
|
$ hg commit -m a -u 'with space' -d 15:00
|
|
|
|
churn with space in alias
|
|
|
|
$ hg churn --aliases ../aliases -r tip
|
|
no-space 1 ************************************************************
|
|
|
|
$ cd ..
|
|
|
|
|
|
Issue833: ZeroDivisionError
|
|
|
|
$ hg init issue-833
|
|
$ cd issue-833
|
|
$ touch foo
|
|
$ hg ci -Am foo
|
|
adding foo
|
|
|
|
this was failing with a ZeroDivisionError
|
|
|
|
$ hg churn
|
|
test 0
|
|
$ cd ..
|
|
|
|
Ignore trailing or leading spaces in emails
|
|
|
|
$ cd repo
|
|
$ touch bar
|
|
$ hg ci -Am'bar' -u 'user4 <user4@x.com>'
|
|
adding bar
|
|
$ touch foo
|
|
$ hg ci -Am'foo' -u 'user4 < user4@x.com >'
|
|
adding foo
|
|
$ hg log -l2 --template '[{author|email}]\n'
|
|
[ user4@x.com ]
|
|
[user4@x.com]
|
|
$ hg churn -c
|
|
user1 4 *********************************************************
|
|
user3 3 *******************************************
|
|
user2 2 *****************************
|
|
user4@x.com 2 *****************************
|
|
with space 1 **************
|
|
|
|
Test multibyte sequences in names
|
|
|
|
$ echo bar >> bar
|
|
$ hg --encoding utf-8 ci -m'changed bar' -u 'El Niño <nino@x.com>'
|
|
$ hg --encoding utf-8 churn -ct '{author|person}'
|
|
user1 4 **********************************************************
|
|
user3 3 ********************************************
|
|
user2 2 *****************************
|
|
user4 2 *****************************
|
|
El Ni\xc3\xb1o 1 *************** (esc)
|
|
with space 1 ***************
|
|
|
|
Test --template argument, with backwards compatibility
|
|
|
|
$ hg churn -t '{author|user}'
|
|
user1 4 ***************************************************************
|
|
user3 3 ***********************************************
|
|
user2 2 ********************************
|
|
nino 1 ****************
|
|
with 1 ****************
|
|
0
|
|
user4 0
|
|
$ hg churn -T '{author|user}'
|
|
user1 4 ***************************************************************
|
|
user3 3 ***********************************************
|
|
user2 2 ********************************
|
|
nino 1 ****************
|
|
with 1 ****************
|
|
0
|
|
user4 0
|
|
$ hg churn -t 'alltogether'
|
|
alltogether 11 *********************************************************
|
|
$ hg churn -T 'alltogether'
|
|
alltogether 11 *********************************************************
|
|
|
|
$ cd ..
|