diff -r 95e4ae86329f -r c1d83d916e85 tests/test-revert-interactive.t --- a/tests/test-revert-interactive.t Tue Mar 12 14:58:35 2019 -0700 +++ b/tests/test-revert-interactive.t Tue Mar 12 14:17:41 2019 -0700 @@ -444,4 +444,52 @@ > EOF add back removed file a (Yn)? n $ ls + $ hg revert -a + undeleting a $ cd .. + +Test "keep" mode + + $ cat <> $HGRCPATH + > [experimental] + > revert.interactive.select-to-keep = true + > EOF + + $ cd repo + $ printf "x\na\ny\n" > a + $ hg diff + diff -r cb9a9f314b8b a + --- a/a Thu Jan 01 00:00:00 1970 +0000 + +++ b/a Thu Jan 01 00:00:00 1970 +0000 + @@ -1,1 +1,3 @@ + +x + a + +y + $ cat > $TESTTMP/editor.sh << '__EOF__' + > echo "+new line" >> "$1" + > __EOF__ + + $ HGEDITOR="\"sh\" \"${TESTTMP}/editor.sh\"" hg revert -i < y + > n + > e + > EOF + diff --git a/a b/a + 2 hunks, 2 lines changed + examine changes to 'a'? [Ynesfdaq?] y + + @@ -1,1 +1,2 @@ + +x + a + keep change 1/2 to 'a'? [Ynesfdaq?] n + + @@ -1,1 +2,2 @@ + a + +y + keep change 2/2 to 'a'? [Ynesfdaq?] e + + reverting a + $ cat a + a + y + new line