diff options
Diffstat (limited to 'tests/test-annotate.t')
-rw-r--r-- | tests/test-annotate.t | 322 |
1 files changed, 322 insertions, 0 deletions
diff --git a/tests/test-annotate.t b/tests/test-annotate.t new file mode 100644 index 0000000..85a0985 --- /dev/null +++ b/tests/test-annotate.t @@ -0,0 +1,322 @@ + $ HGMERGE=true; export HGMERGE + +init + + $ hg init repo + $ cd repo + +commit + + $ echo 'a' > a + $ hg ci -A -m test -u nobody -d '1 0' + adding a + +annotate -c + + $ hg annotate -c a + 8435f90966e4: a + +annotate -cl + + $ hg annotate -cl a + 8435f90966e4:1: a + +annotate -d + + $ hg annotate -d a + Thu Jan 01 00:00:01 1970 +0000: a + +annotate -n + + $ hg annotate -n a + 0: a + +annotate -nl + + $ hg annotate -nl a + 0:1: a + +annotate -u + + $ hg annotate -u a + nobody: a + +annotate -cdnu + + $ hg annotate -cdnu a + nobody 0 8435f90966e4 Thu Jan 01 00:00:01 1970 +0000: a + +annotate -cdnul + + $ hg annotate -cdnul a + nobody 0 8435f90966e4 Thu Jan 01 00:00:01 1970 +0000:1: a + + $ cat <<EOF >>a + > a + > a + > EOF + $ hg ci -ma1 -d '1 0' + $ hg cp a b + $ hg ci -mb -d '1 0' + $ cat <<EOF >> b + > b4 + > b5 + > b6 + > EOF + $ hg ci -mb2 -d '2 0' + +annotate -n b + + $ hg annotate -n b + 0: a + 1: a + 1: a + 3: b4 + 3: b5 + 3: b6 + +annotate --no-follow b + + $ hg annotate --no-follow b + 2: a + 2: a + 2: a + 3: b4 + 3: b5 + 3: b6 + +annotate -nl b + + $ hg annotate -nl b + 0:1: a + 1:2: a + 1:3: a + 3:4: b4 + 3:5: b5 + 3:6: b6 + +annotate -nf b + + $ hg annotate -nf b + 0 a: a + 1 a: a + 1 a: a + 3 b: b4 + 3 b: b5 + 3 b: b6 + +annotate -nlf b + + $ hg annotate -nlf b + 0 a:1: a + 1 a:2: a + 1 a:3: a + 3 b:4: b4 + 3 b:5: b5 + 3 b:6: b6 + + $ hg up -C 2 + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ cat <<EOF >> b + > b4 + > c + > b5 + > EOF + $ hg ci -mb2.1 -d '2 0' + created new head + $ hg merge + merging b + 0 files updated, 1 files merged, 0 files removed, 0 files unresolved + (branch merge, don't forget to commit) + $ hg ci -mmergeb -d '3 0' + +annotate after merge + + $ hg annotate -nf b + 0 a: a + 1 a: a + 1 a: a + 3 b: b4 + 4 b: c + 3 b: b5 + +annotate after merge with -l + + $ hg annotate -nlf b + 0 a:1: a + 1 a:2: a + 1 a:3: a + 3 b:4: b4 + 4 b:5: c + 3 b:5: b5 + + $ hg up -C 1 + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + $ hg cp a b + $ cat <<EOF > b + > a + > z + > a + > EOF + $ hg ci -mc -d '3 0' + created new head + $ hg merge + merging b + 0 files updated, 1 files merged, 0 files removed, 0 files unresolved + (branch merge, don't forget to commit) + $ cat <<EOF >> b + > b4 + > c + > b5 + > EOF + $ echo d >> b + $ hg ci -mmerge2 -d '4 0' + +annotate after rename merge + + $ hg annotate -nf b + 0 a: a + 6 b: z + 1 a: a + 3 b: b4 + 4 b: c + 3 b: b5 + 7 b: d + +annotate after rename merge with -l + + $ hg annotate -nlf b + 0 a:1: a + 6 b:2: z + 1 a:3: a + 3 b:4: b4 + 4 b:5: c + 3 b:5: b5 + 7 b:7: d + +Issue2807: alignment of line numbers with -l + + $ echo more >> b + $ hg ci -mmore -d '5 0' + $ echo more >> b + $ hg ci -mmore -d '6 0' + $ echo more >> b + $ hg ci -mmore -d '7 0' + $ hg annotate -nlf b + 0 a: 1: a + 6 b: 2: z + 1 a: 3: a + 3 b: 4: b4 + 4 b: 5: c + 3 b: 5: b5 + 7 b: 7: d + 8 b: 8: more + 9 b: 9: more + 10 b:10: more + +linkrev vs rev + + $ hg annotate -r tip -n a + 0: a + 1: a + 1: a + +linkrev vs rev with -l + + $ hg annotate -r tip -nl a + 0:1: a + 1:2: a + 1:3: a + +Issue589: "undelete" sequence leads to crash + +annotate was crashing when trying to --follow something + +like A -> B -> A + +generate ABA rename configuration + + $ echo foo > foo + $ hg add foo + $ hg ci -m addfoo + $ hg rename foo bar + $ hg ci -m renamefoo + $ hg rename bar foo + $ hg ci -m renamebar + +annotate after ABA with follow + + $ hg annotate --follow foo + foo: foo + +missing file + + $ hg ann nosuchfile + abort: nosuchfile: no such file in rev e9e6b4fa872f + [255] + +annotate file without '\n' on last line + + $ printf "" > c + $ hg ci -A -m test -u nobody -d '1 0' + adding c + $ hg annotate c + $ printf "a\nb" > c + $ hg ci -m test + $ hg annotate c + [0-9]+: a (re) + [0-9]+: b (re) + +Test annotate with whitespace options + + $ cd .. + $ hg init repo-ws + $ cd repo-ws + $ cat > a <<EOF + > aa + > + > b b + > EOF + $ hg ci -Am "adda" + adding a + $ cat > a <<EOF + > a a + > + > + > b b + > EOF + $ hg ci -m "changea" + +Annotate with no option + + $ hg annotate a + 1: a a + 0: + 1: + 1: b b + +Annotate with --ignore-space-change + + $ hg annotate --ignore-space-change a + 1: a a + 1: + 0: + 0: b b + +Annotate with --ignore-all-space + + $ hg annotate --ignore-all-space a + 0: a a + 0: + 1: + 0: b b + +Annotate with --ignore-blank-lines (similar to no options case) + + $ hg annotate --ignore-blank-lines a + 1: a a + 0: + 1: + 1: b b + + $ cd .. |