##// END OF EJS Templates
cmdserver: forcibly use L channel to read password input (issue3161)...
cmdserver: forcibly use L channel to read password input (issue3161) Command server is designed to use the channel protocol even if the server process is accessible to tty, whereas vanilla hg should be able to read password from tty in that case. So it isn't enough to swap sys.stdin: # works only if the server process is detached from the console sys.stdin = self.fin getpass.getpass('') sys.stdin = oldin or test isatty: # vanilla hg can't talk to tty if stdin is redirected if self._isatty(self.fin): return getpass.getpass('') else: ... Since ui.nontty flag is undocumented and command-server channels don't provide isatty(), this change won't affect the other uses of ui._isatty(). issue3161 also suggests to provide some context of messages. I think it can be implemented by using the generic templating function.

File last commit:

r19381:e033a7d4 default
r21195:9336bc7d stable
Show More
test-remove.t
287 lines | 5.3 KiB | text/troff | Tads3Lexer
Nicolas Dumazet
tests: unify test-remove
r12099 $ remove() {
> hg rm $@
Simon Heimberg
tests: do not skip code-checking on some whole files...
r19381 > echo "exit code: $?"
Nicolas Dumazet
tests: unify test-remove
r12099 > hg st
> # do not use ls -R, which recurses in .hg subdirs on Mac OS X 10.5
> find . -name .hg -prune -o -type f -print | sort
> hg up -C
> }
$ hg init a
$ cd a
$ echo a > foo
file not managed
$ remove foo
not removing foo: file is untracked
Martin Geisler
merge with stable
r12130 exit code: 1
Nicolas Dumazet
tests: unify test-remove
r12099 ? foo
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg add foo
$ hg commit -m1
the table cases
00 state added, options none
$ echo b > bar
$ hg add bar
$ remove bar
Matt Mackall
remove: suggest forget to undo adds
r15115 not removing bar: file has been marked for add (use forget to undo)
Martin Geisler
merge with stable
r12130 exit code: 1
Nicolas Dumazet
tests: unify test-remove
r12099 A bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
01 state clean, options none
$ remove foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
? bar
./bar
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
02 state modified, options none
$ echo b >> foo
$ remove foo
not removing foo: file is modified (use -f to force removal)
Martin Geisler
merge with stable
r12130 exit code: 1
Nicolas Dumazet
tests: unify test-remove
r12099 M foo
? bar
./bar
./foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
03 state missing, options none
$ rm foo
$ remove foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
? bar
./bar
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
10 state added, options -f
$ echo b > bar
$ hg add bar
$ remove -f bar
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 ? bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm bar
11 state clean, options -f
$ remove -f foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
12 state modified, options -f
$ echo b >> foo
$ remove -f foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
13 state missing, options -f
$ rm foo
$ remove -f foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
20 state added, options -A
$ echo b > bar
$ hg add bar
$ remove -A bar
Mads Kiilerich
rm: drop misleading 'use -f' hint for the rm --after 'not removing' warning...
r18053 not removing bar: file still exists
Martin Geisler
merge with stable
r12130 exit code: 1
Nicolas Dumazet
tests: unify test-remove
r12099 A bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
21 state clean, options -A
$ remove -A foo
Mads Kiilerich
rm: drop misleading 'use -f' hint for the rm --after 'not removing' warning...
r18053 not removing foo: file still exists
Martin Geisler
merge with stable
r12130 exit code: 1
Nicolas Dumazet
tests: unify test-remove
r12099 ? bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
22 state modified, options -A
$ echo b >> foo
$ remove -A foo
Mads Kiilerich
rm: drop misleading 'use -f' hint for the rm --after 'not removing' warning...
r18053 not removing foo: file still exists
Martin Geisler
merge with stable
r12130 exit code: 1
Nicolas Dumazet
tests: unify test-remove
r12099 M foo
? bar
./bar
./foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
23 state missing, options -A
$ rm foo
$ remove -A foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
? bar
./bar
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
30 state added, options -Af
$ echo b > bar
$ hg add bar
$ remove -Af bar
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 ? bar
./bar
./foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm bar
31 state clean, options -Af
$ remove -Af foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
./foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
32 state modified, options -Af
$ echo b >> foo
$ remove -Af foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
./foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
33 state missing, options -Af
$ rm foo
$ remove -Af foo
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
test some directory stuff
$ mkdir test
$ echo a > test/foo
$ echo b > test/bar
$ hg ci -Am2
adding test/bar
adding test/foo
dir, options none
$ rm test/bar
$ remove test
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 removing test/bar (glob)
removing test/foo (glob)
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R test/bar
R test/foo
./foo
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
dir, options -f
$ rm test/bar
$ remove -f test
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 removing test/bar (glob)
removing test/foo (glob)
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R test/bar
R test/foo
./foo
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
dir, options -A
$ rm test/bar
$ remove -A test
Mads Kiilerich
rm: drop misleading 'use -f' hint for the rm --after 'not removing' warning...
r18053 not removing test/foo: file still exists (glob)
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 removing test/bar (glob)
Martin Geisler
merge with stable
r12130 exit code: 1
Nicolas Dumazet
tests: unify test-remove
r12099 R test/bar
./foo
./test/foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dir, options -Af
$ rm test/bar
$ remove -Af test
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 removing test/bar (glob)
removing test/foo (glob)
Martin Geisler
merge with stable
r12130 exit code: 0
Nicolas Dumazet
tests: unify test-remove
r12099 R test/bar
R test/foo
./foo
./test/foo
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
test remove dropping empty trees (issue1861)
$ mkdir -p issue1861/b/c
$ echo x > issue1861/x
$ echo y > issue1861/b/c/y
$ hg ci -Am add
adding issue1861/b/c/y
adding issue1861/x
$ hg rm issue1861/b
Mads Kiilerich
tests: make (glob) on windows accept \ instead of /...
r15447 removing issue1861/b/c/y (glob)
Nicolas Dumazet
tests: unify test-remove
r12099 $ hg ci -m remove
$ ls issue1861
x
Adrian Buehlmann
test-remove-new: integrate into test-remove.t
r16904
test that commit does not crash if the user removes a newly added file
$ touch f1
$ hg add f1
$ rm f1
$ hg ci -A -mx
removing f1
nothing changed
[1]
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
Matt Mackall
remove: don't return error on directories with tracked files...
r17848 handling of untracked directories and missing files
$ mkdir d1
$ echo a > d1/a
$ hg rm --after d1
not removing d1: no tracked files
[1]
$ hg add d1/a
$ rm d1/a
$ hg rm --after d1
Adrian Buehlmann
test-remove: fix \ vs. / issues on Windows...
r17861 removing d1/a (glob)
Adrian Buehlmann
test-remove: adapt to differing error message on Windows...
r17862 #if windows
$ hg rm --after nosuch
nosuch: * (glob)
[1]
#else
Matt Mackall
remove: don't return error on directories with tracked files...
r17848 $ hg rm --after nosuch
nosuch: No such file or directory
[1]
Adrian Buehlmann
test-remove: adapt to differing error message on Windows...
r17862 #endif