Mercurial > public > mercurial-scm > hg
diff tests/test-remove.t @ 12099:54c9549ccb22
tests: unify test-remove
author | Nicolas Dumazet <nicdumz.commits@gmail.com> |
---|---|
date | Mon, 30 Aug 2010 13:02:54 +0900 |
parents | tests/test-remove@1f665246dab3 |
children | 48735ce02345 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-remove.t Mon Aug 30 13:02:54 2010 +0900 @@ -0,0 +1,234 @@ + $ remove() { + > hg rm $@ + > 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 + ? 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 + not removing bar: file has been marked for add (use -f to force removal) + A bar + ./bar + ./foo + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + +01 state clean, options none + + $ remove foo + 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) + 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 + 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 + ? 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 + 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 + R foo + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + +13 state missing, options -f + + $ rm foo + $ remove -f foo + 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 + not removing bar: file still exists (use -f to force removal) + A bar + ./bar + ./foo + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + +21 state clean, options -A + + $ remove -A foo + not removing foo: file still exists (use -f to force removal) + ? 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 + not removing foo: file still exists (use -f to force removal) + 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 + 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 + ? 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 + 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 + 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 + 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 + removing test/bar + removing test/foo + 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 + removing test/bar + removing test/foo + 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 + not removing test/foo: file still exists (use -f to force removal) + removing test/bar + 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 + removing test/bar + removing test/foo + 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 + removing issue1861/b/c/y + $ hg ci -m remove + $ ls issue1861 + x