Mercurial > hg
view tests/test-status-color @ 8564:6b9ec23b09fc
named branches: improve pre-push logic (issue736)
Each named branch is considered separately, and the push is allowed if
no new branch heads are created for any named branch to be pushed.
Due to some tests's use of --debug, their output will change after this
addition. This has been fixed as well.
Co-contributor: Henrik Stuart <henrik.stuart@edlund.dk>
author | Sune Foldager <cryo@cyanite.org> |
---|---|
date | Sat, 23 May 2009 17:04:31 +0200 |
parents | 03dd55115985 |
children | 7b3d837ca60e |
line wrap: on
line source
#!/bin/sh echo "[extensions]" >> $HGRCPATH echo "color=" >> $HGRCPATH hg init repo1 cd repo1 mkdir a b a/1 b/1 b/2 touch in_root a/in_a b/in_b a/1/in_a_1 b/1/in_b_1 b/2/in_b_2 echo "hg status in repo root:" hg status --color=always echo "hg status . in repo root:" hg status --color=always . for dir in a b a/1 b/1 b/2; do echo "hg status in $dir:" hg status --color=always --cwd "$dir" echo "hg status . in $dir:" hg status --color=always --cwd "$dir" . echo "hg status .. in $dir:" hg status --color=always --cwd "$dir" .. done cd .. hg init repo2 cd repo2 touch modified removed deleted ignored echo "^ignored$" > .hgignore hg ci -A -m 'initial checkin' -d "1000000 0" touch modified added unknown ignored hg add added hg remove removed rm deleted echo "hg status:" hg status --color=always echo "hg status modified added removed deleted unknown never-existed ignored:" hg status --color=always modified added removed deleted unknown never-existed ignored hg copy modified copied echo "hg status -C:" hg status --color=always -C echo "hg status -A:" hg status --color=always -A echo "^ignoreddir$" > .hgignore mkdir ignoreddir touch ignoreddir/file echo "hg status ignoreddir/file:" hg status --color=always ignoreddir/file echo "hg status -i ignoreddir/file:" hg status --color=always -i ignoreddir/file cd .. # check 'status -q' and some combinations hg init repo3 cd repo3 touch modified removed deleted ignored echo "^ignored$" > .hgignore hg commit -A -m 'initial checkin' touch added unknown ignored hg add added echo "test" >> modified hg remove removed rm deleted hg copy modified copied # Run status with 2 different flags. # Check if result is the same or different. # If result is not as expected, raise error assert() { hg status --color=always $1 > ../a hg status --color=always $2 > ../b out=`diff ../a ../b` if [ $? -ne 0 ]; then out=1 else out=0 fi if [ $3 -eq 0 ]; then df="same" else df="different" fi if [ $out -ne $3 ]; then echo "Error on $1 and $2, should be $df." fi } # assert flag1 flag2 [0-same | 1-different] assert "-q" "-mard" 0 assert "-A" "-marduicC" 0 assert "-qA" "-mardcC" 0 assert "-qAui" "-A" 0 assert "-qAu" "-marducC" 0 assert "-qAi" "-mardicC" 0 assert "-qu" "-u" 0 assert "-q" "-u" 1 assert "-m" "-a" 1 assert "-r" "-d" 1