Mercurial > hg-stable
diff tests/test-revert-interactive.t @ 24359:521fe8287dd5
revert: add flag to make revert interactive
author | Laurent Charignon <lcharignon@fb.com> |
---|---|
date | Mon, 16 Mar 2015 16:33:59 -0700 |
parents | |
children | 8de8cd34f2e3 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-revert-interactive.t Mon Mar 16 16:33:59 2015 -0700 @@ -0,0 +1,203 @@ +Revert interactive tests +1 add and commit file f +2 add commit file folder1/g +3 add and commit file folder2/h +4 add and commit file folder1/i +5 commit change to file f +6 commit changes to files folder1/g folder2/h +7 commit changes to files folder1/g folder2/h +8 revert interactive to commit id 2 (line 3 above), check that folder1/i is removed and +9 make workdir match 7 +10 run the same test than 8 from within folder1 and check same expectations + + $ cat <<EOF >> $HGRCPATH + > [ui] + > interactive = true + > [extensions] + > record = + > EOF + + + $ mkdir -p a/{folder1,folder2} + $ cd a + $ hg init + $ seq 1 5 > f ; hg add f ; hg commit -m "adding f" + $ seq 1 5 > folder1/g ; hg add folder1/g ; hg commit -m "adding folder1/g" + $ seq 1 5 > folder2/h ; hg add folder2/h ; hg commit -m "adding folder2/h" + $ seq 1 5 > folder1/i ; hg add folder1/i ; hg commit -m "adding folder1/i" + $ echo "a" > f ; seq 1 5 >> f ; echo "b" >> f ; hg commit -m "modifying f" + $ echo "c" > folder1/g ; seq 1 5 >> folder1/g ; echo "d" >> folder1/g ; hg commit -m "modifying folder1/g" + $ echo "e" > folder2/h ; seq 1 5 >> folder2/h ; echo "f" >> folder2/h ; hg commit -m "modifying folder2/h" + $ hg tip + changeset: 6:59dd6e4ab63a + tag: tip + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: modifying folder2/h + + $ hg revert -i -r 2 --all -- << EOF + > y + > y + > y + > y + > y + > n + > n + > EOF + reverting f + reverting folder1/g (glob) + removing folder1/i (glob) + reverting folder2/h (glob) + diff -r 89ac3d72e4a4 f + 2 hunks, 2 lines changed + examine changes to 'f'? [Ynesfdaq?] y + + @@ -1,6 +1,5 @@ + -a + 1 + 2 + 3 + 4 + 5 + record change 1/6 to 'f'? [Ynesfdaq?] y + + @@ -2,6 +1,5 @@ + 1 + 2 + 3 + 4 + 5 + -b + record change 2/6 to 'f'? [Ynesfdaq?] y + + diff -r 89ac3d72e4a4 folder1/g + 2 hunks, 2 lines changed + examine changes to 'folder1/g'? [Ynesfdaq?] y + + @@ -1,6 +1,5 @@ + -c + 1 + 2 + 3 + 4 + 5 + record change 3/6 to 'folder1/g'? [Ynesfdaq?] y + + @@ -2,6 +1,5 @@ + 1 + 2 + 3 + 4 + 5 + -d + record change 4/6 to 'folder1/g'? [Ynesfdaq?] n + + diff -r 89ac3d72e4a4 folder2/h + 2 hunks, 2 lines changed + examine changes to 'folder2/h'? [Ynesfdaq?] n + + $ cat f + 1 + 2 + 3 + 4 + 5 + $ cat folder1/g + 1 + 2 + 3 + 4 + 5 + d + $ cat folder2/h + e + 1 + 2 + 3 + 4 + 5 + f + $ hg update -C 6 + 3 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ hg revert -i -r 2 --all -- << EOF + > y + > y + > y + > y + > y + > n + > n + > EOF + reverting f + reverting folder1/g (glob) + removing folder1/i (glob) + reverting folder2/h (glob) + diff -r 89ac3d72e4a4 f + 2 hunks, 2 lines changed + examine changes to 'f'? [Ynesfdaq?] y + + @@ -1,6 +1,5 @@ + -a + 1 + 2 + 3 + 4 + 5 + record change 1/6 to 'f'? [Ynesfdaq?] y + + @@ -2,6 +1,5 @@ + 1 + 2 + 3 + 4 + 5 + -b + record change 2/6 to 'f'? [Ynesfdaq?] y + + diff -r 89ac3d72e4a4 folder1/g + 2 hunks, 2 lines changed + examine changes to 'folder1/g'? [Ynesfdaq?] y + + @@ -1,6 +1,5 @@ + -c + 1 + 2 + 3 + 4 + 5 + record change 3/6 to 'folder1/g'? [Ynesfdaq?] y + + @@ -2,6 +1,5 @@ + 1 + 2 + 3 + 4 + 5 + -d + record change 4/6 to 'folder1/g'? [Ynesfdaq?] n + + diff -r 89ac3d72e4a4 folder2/h + 2 hunks, 2 lines changed + examine changes to 'folder2/h'? [Ynesfdaq?] n + + $ cat f + 1 + 2 + 3 + 4 + 5 + $ cat folder1/g + 1 + 2 + 3 + 4 + 5 + d + $ cat folder2/h + e + 1 + 2 + 3 + 4 + 5 + f