##// END OF EJS Templates
clfilter: use unfiltered repo for bookmark push logic...
clfilter: use unfiltered repo for bookmark push logic The remote location of the bookmark may be filtered locally. This changeset ensures that bookmark movement logic has access to all the repo's content.

File last commit:

r17377:a10f7eeb default
r18009:67c874d1 default
Show More
test-status.t
338 lines | 5.9 KiB | text/troff | Tads3Lexer
Nicolas Dumazet
tests: unify test-status
r11782 $ 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
hg status in repo root:
$ hg status
? a/1/in_a_1
? a/in_a
? b/1/in_b_1
? b/2/in_b_2
? b/in_b
? in_root
hg status . in repo root:
$ hg status .
? a/1/in_a_1
? a/in_a
? b/1/in_b_1
? b/2/in_b_2
? b/in_b
? in_root
$ hg status --cwd a
? a/1/in_a_1
? a/in_a
? b/1/in_b_1
? b/2/in_b_2
? b/in_b
? in_root
$ hg status --cwd a .
? 1/in_a_1
? in_a
$ hg status --cwd a ..
? 1/in_a_1
? in_a
? ../b/1/in_b_1
? ../b/2/in_b_2
? ../b/in_b
? ../in_root
$ hg status --cwd b
? a/1/in_a_1
? a/in_a
? b/1/in_b_1
? b/2/in_b_2
? b/in_b
? in_root
$ hg status --cwd b .
? 1/in_b_1
? 2/in_b_2
? in_b
$ hg status --cwd b ..
? ../a/1/in_a_1
? ../a/in_a
? 1/in_b_1
? 2/in_b_2
? in_b
? ../in_root
$ hg status --cwd a/1
? a/1/in_a_1
? a/in_a
? b/1/in_b_1
? b/2/in_b_2
? b/in_b
? in_root
$ hg status --cwd a/1 .
? in_a_1
$ hg status --cwd a/1 ..
? in_a_1
? ../in_a
$ hg status --cwd b/1
? a/1/in_a_1
? a/in_a
? b/1/in_b_1
? b/2/in_b_2
? b/in_b
? in_root
$ hg status --cwd b/1 .
? in_b_1
$ hg status --cwd b/1 ..
? in_b_1
? ../2/in_b_2
? ../in_b
$ hg status --cwd b/2
? a/1/in_a_1
? a/in_a
? b/1/in_b_1
? b/2/in_b_2
? b/in_b
? in_root
$ hg status --cwd b/2 .
? in_b_2
$ hg status --cwd b/2 ..
? ../1/in_b_1
? in_b_2
? ../in_b
$ cd ..
$ hg init repo2
$ cd repo2
$ touch modified removed deleted ignored
$ echo "^ignored$" > .hgignore
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg ci -A -m 'initial checkin'
Nicolas Dumazet
tests: unify test-status
r11782 adding .hgignore
adding deleted
adding modified
adding removed
$ touch modified added unknown ignored
$ hg add added
$ hg remove removed
$ rm deleted
hg status:
$ hg status
A added
R removed
! deleted
? unknown
hg status modified added removed deleted unknown never-existed ignored:
$ hg status modified added removed deleted unknown never-existed ignored
Mads Kiilerich
tests: hide 'No such file or directory' messages...
r15521 never-existed: * (glob)
Nicolas Dumazet
tests: unify test-status
r11782 A added
R removed
! deleted
? unknown
$ hg copy modified copied
hg status -C:
$ hg status -C
A added
A copied
modified
R removed
! deleted
? unknown
hg status -A:
$ hg status -A
A added
A copied
modified
R removed
! deleted
? unknown
I ignored
C .hgignore
C modified
$ echo "^ignoreddir$" > .hgignore
$ mkdir ignoreddir
$ touch ignoreddir/file
hg status ignoreddir/file:
$ hg status ignoreddir/file
hg status -i ignoreddir/file:
$ hg status -i ignoreddir/file
I ignoreddir/file
$ cd ..
Matt Mackall
tests: fix a bunch of pointless #s in unified tests
r12328 Check 'status -q' and some combinations
Nicolas Dumazet
tests: unify test-status
r11782
$ hg init repo3
$ cd repo3
$ touch modified removed deleted ignored
$ echo "^ignored$" > .hgignore
$ hg commit -A -m 'initial checkin'
adding .hgignore
adding deleted
adding modified
adding removed
$ touch added unknown ignored
$ hg add added
$ echo "test" >> modified
$ hg remove removed
$ rm deleted
$ hg copy modified copied
Matt Mackall
tests: fix a bunch of pointless #s in unified tests
r12328 Run status with 2 different flags.
Check if result is the same or different.
If result is not as expected, raise error
Nicolas Dumazet
tests: unify test-status
r11782
$ assert() {
Matt Mackall
tests: cleanup exit code handling in unified tests
r12365 > hg status $1 > ../a
> hg status $2 > ../b
> if diff ../a ../b > /dev/null; then
> out=0
> else
Nicolas Dumazet
tests: unify test-status
r11782 > out=1
> 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
> }
Matt Mackall
tests: fix a bunch of pointless #s in unified tests
r12328 Assert flag1 flag2 [0-same | 1-different]
Nicolas Dumazet
tests: unify test-status
r11782
$ 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
$ cd ..
$ hg init repo4
$ cd repo4
$ touch modified removed deleted
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg ci -q -A -m 'initial checkin'
Nicolas Dumazet
tests: unify test-status
r11782 $ touch added unknown
$ hg add added
$ hg remove removed
$ rm deleted
$ echo x > modified
$ hg copy modified copied
$ hg ci -m 'test checkin' -d "1000001 0"
$ rm *
$ touch unrelated
$ hg ci -q -A -m 'unrelated checkin' -d "1000002 0"
hg status --change 1:
$ hg status --change 1
M modified
A added
A copied
R removed
hg status --change 1 unrelated:
$ hg status --change 1 unrelated
hg status -C --change 1 added modified copied removed deleted:
$ hg status -C --change 1 added modified copied removed deleted
M modified
A added
A copied
modified
R removed
Patrick Mezard
status: support revsets with --change
r15578 hg status -A --change 1 and revset:
Nicolas Dumazet
tests: unify test-status
r11782
Patrick Mezard
status: support revsets with --change
r15578 $ hg status -A --change '1|1'
Nicolas Dumazet
tests: unify test-status
r11782 M modified
A added
A copied
modified
R removed
C deleted
Yuya Nishihara
filectx: fix cmp() of file starting with '\1\n'...
r15848
$ cd ..
hg status of binary file starting with '\1\n', a separator for metadata:
$ hg init repo5
$ cd repo5
Jim Hague
tests: tighten checks for octal escapes in shell printf....
r16098 >>> open("010a", "wb").write("\1\nfoo")
Yuya Nishihara
filectx: fix cmp() of file starting with '\1\n'...
r15848 $ hg ci -q -A -m 'initial checkin'
$ hg status -A
C 010a
Jim Hague
tests: tighten checks for octal escapes in shell printf....
r16098 >>> open("010a", "wb").write("\1\nbar")
Yuya Nishihara
filectx: fix cmp() of file starting with '\1\n'...
r15848 $ hg status -A
M 010a
$ hg ci -q -m 'modify 010a'
$ hg status -A --rev 0:1
M 010a
$ touch empty
$ hg ci -q -A -m 'add another file'
$ hg status -A --rev 1:2 010a
C 010a
FUJIWARA Katsunori
localrepository: use 'changectx.dirs()' in 'status()' for directory patterns...
r16144
$ cd ..
test "hg status" with "directory pattern" which matches against files
only known on target revision.
$ hg init repo6
$ cd repo6
$ echo a > a.txt
$ hg add a.txt
$ hg commit -m '#0'
$ mkdir -p 1/2/3/4/5
$ echo b > 1/2/3/4/5/b.txt
$ hg add 1/2/3/4/5/b.txt
$ hg commit -m '#1'
$ hg update -C 0 > /dev/null
$ hg status -A
C a.txt
the directory matching against specified pattern should be removed,
because directory existence prevents 'dirstate.walk()' from showing
warning message about such pattern.
$ test ! -d 1
$ hg status -A --rev 1 1/2/3/4/5/b.txt
R 1/2/3/4/5/b.txt
$ hg status -A --rev 1 1/2/3/4/5
R 1/2/3/4/5/b.txt
$ hg status -A --rev 1 1/2/3
R 1/2/3/4/5/b.txt
$ hg status -A --rev 1 1
R 1/2/3/4/5/b.txt
Patrick Mezard
test-status.t: test ui.slash on Windows
r17377 #if windows
$ hg --config ui.slash=false status -A --rev 1 1
R 1\2\3\4\5\b.txt
#endif
FUJIWARA Katsunori
localrepository: use 'changectx.dirs()' in 'status()' for directory patterns...
r16144 $ cd ..