Mercurial > public > mercurial-scm > hg-stable
diff tests/test-copy.t @ 16856:241a32942c7a
tests: roll test-copy2.t into test-copy.t
author | Adrian Buehlmann <adrian@cadifra.com> |
---|---|
date | Mon, 04 Jun 2012 21:09:54 +0200 |
parents | 4f795f5fbb0b |
children | f2719b387380 |
line wrap: on
line diff
--- a/tests/test-copy.t Sun Jun 03 17:49:04 2012 +0200 +++ b/tests/test-copy.t Mon Jun 04 21:09:54 2012 +0200 @@ -1,3 +1,7 @@ + + $ mkdir part1 + $ cd part1 + $ hg init $ echo a > a $ hg add a @@ -92,3 +96,119 @@ crosschecking files in changesets and manifests checking files 2 files, 2 changesets, 2 total revisions + + $ cd .. + + + $ mkdir part2 + $ cd part2 + + $ hg init + $ echo foo > foo +should fail - foo is not managed + $ hg mv foo bar + foo: not copying - file is not managed + abort: no files to copy + [255] + $ hg st -A + ? foo + $ hg add foo +dry-run; print a warning that this is not a real copy; foo is added + $ hg mv --dry-run foo bar + foo has not been committed yet, so no copy data will be stored for bar. + $ hg st -A + A foo +should print a warning that this is not a real copy; bar is added + $ hg mv foo bar + foo has not been committed yet, so no copy data will be stored for bar. + $ hg st -A + A bar +should print a warning that this is not a real copy; foo is added + $ hg cp bar foo + bar has not been committed yet, so no copy data will be stored for foo. + $ hg rm -f bar + $ rm bar + $ hg st -A + A foo + $ hg commit -m1 + +moving a missing file + $ rm foo + $ hg mv foo foo3 + foo: deleted in working copy + foo3 does not exist! + $ hg up -qC . + +copy --after to a nonexistant target filename + $ hg cp -A foo dummy + foo: not recording copy - dummy does not exist + +dry-run; should show that foo is clean + $ hg copy --dry-run foo bar + $ hg st -A + C foo +should show copy + $ hg copy foo bar + $ hg st -C + A bar + foo + +shouldn't show copy + $ hg commit -m2 + $ hg st -C + +should match + $ hg debugindex foo + rev offset length base linkrev nodeid p1 p2 + 0 0 5 0 0 2ed2a3912a0b 000000000000 000000000000 + $ hg debugrename bar + bar renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd + + $ echo bleah > foo + $ echo quux > bar + $ hg commit -m3 + +should not be renamed + $ hg debugrename bar + bar not renamed + + $ hg copy -f foo bar +should show copy + $ hg st -C + M bar + foo + $ hg commit -m3 + +should show no parents for tip + $ hg debugindex bar + rev offset length base linkrev nodeid p1 p2 + 0 0 69 0 1 7711d36246cc 000000000000 000000000000 + 1 69 6 1 2 bdf70a2b8d03 7711d36246cc 000000000000 + 2 75 81 1 3 b2558327ea8d 000000000000 000000000000 +should match + $ hg debugindex foo + rev offset length base linkrev nodeid p1 p2 + 0 0 5 0 0 2ed2a3912a0b 000000000000 000000000000 + 1 5 7 1 2 dd12c926cf16 2ed2a3912a0b 000000000000 + $ hg debugrename bar + bar renamed from foo:dd12c926cf165e3eb4cf87b084955cb617221c17 + +should show no copies + $ hg st -C + +copy --after on an added file + $ cp bar baz + $ hg add baz + $ hg cp -A bar baz + $ hg st -C + A baz + bar + +foo was clean: + $ hg st -AC foo + C foo +but it's considered modified after a copy --after --force + $ hg copy -Af bar foo + $ hg st -AC foo + M foo + bar