diff -r 1c21865bf8ba -r 24943df310d4 tests/test-amend.t --- a/tests/test-amend.t Tue Jun 12 11:53:02 2012 +0200 +++ b/tests/test-amend.t Tue Jun 12 13:28:39 2012 +0200 @@ -8,6 +8,10 @@ $ echo "obsolete=$(echo $(dirname $TESTDIR))/hgext/obsolete.py" >> $HGRCPATH $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext/evolve.py" >> $HGRCPATH + $ glog() { + > hg glog --template '{rev}@{branch}({phase}) {desc|firstline}\n' "$@" + > } + $ hg init repo $ cd repo $ echo a > a @@ -25,7 +29,67 @@ $ hg branches foo 2:a34b93d251e4 default 0:07f494440405 (inactive) - $ hg glog --template '{rev}@{branch} {desc|firstline}\n' - @ 2@foo adda + $ glog + @ 2@foo(draft) adda + +Test no-op + + $ hg amend + abort: no updates found + [255] + $ glog + @ 2@foo(draft) adda + + +Test forcing the message to the same value, no intermediate revision. + + $ hg amend -m 'adda' + abort: no updates found + [255] + $ glog + @ 2@foo(draft) adda +Test collapsing into an existing revision, no intermediate revision. + + $ echo a >> a + $ hg ci -m changea + $ echo a > a + $ hg ci -m reseta + $ hg amend --change 2 + abort: no updates found + [255] + $ hg phase 2 + 2: draft + $ glog + @ 4@foo(draft) reseta + | + o 3@foo(draft) changea + | + o 2@foo(draft) adda + + +Test collapsing into an existing rev, with an intermediate revision. + + $ hg branch --force default + marked working directory as branch default + (branches are permanent and global, did you want a bookmark?) + $ hg ci -m resetbranch + created new head + $ hg branch --force foo + marked working directory as branch foo + (branches are permanent and global, did you want a bookmark?) + $ hg amend --change 2 + abort: no updates found + [255] + $ glog + @ 6@foo(secret) amends a34b93d251e49c93d5685ebacad785c73a7e8605 + | + o 5@default(draft) resetbranch + | + o 4@foo(draft) reseta + | + o 3@foo(draft) changea + | + o 2@foo(draft) adda +