Mercurial > hg-stable
diff tests/test-revset.t @ 24883:09049042ab99 stable
ui: disable revsetaliases in plain mode (BC)
ui.plain() is supposed to disable config options that change the UI to the
detriment of scripts. As the test demonstrates, revset aliases can actually
override builtin ones, just like command aliases. Therefore I believe this is a
bugfix and appropriate for stable.
author | Siddharth Agarwal <sid0@fb.com> |
---|---|
date | Thu, 30 Apr 2015 07:46:54 -0700 |
parents | fb47816e1a9c |
children | 8cc6036bca53 |
line wrap: on
line diff
--- a/tests/test-revset.t Wed Apr 29 19:47:37 2015 +0900 +++ b/tests/test-revset.t Thu Apr 30 07:46:54 2015 -0700 @@ -1049,6 +1049,8 @@ $ echo '[revsetalias]' >> .hg/hgrc $ echo 'm = merge()' >> .hg/hgrc +(revset aliases can override builtin revsets) + $ echo 'p2($1) = p1($1)' >> .hg/hgrc $ echo 'sincem = descendants(m)' >> .hg/hgrc $ echo 'd($1) = reverse(sort($1, date))' >> .hg/hgrc $ echo 'rs(ARG1, ARG2) = reverse(sort(ARG1, ARG2))' >> .hg/hgrc @@ -1064,6 +1066,58 @@ <fullreposet+ 0:9>> 6 + $ HGPLAIN=1 try m + ('symbol', 'm') + abort: unknown revision 'm'! + [255] + + $ HGPLAIN=1 HGPLAINEXCEPT=revsetalias try m + ('symbol', 'm') + (func + ('symbol', 'merge') + None) + * set: + <filteredset + <fullreposet+ 0:9>> + 6 + +(for some reason HGPLAIN and HGPLAINEXCEPT can carry forward) + + $ unset HGPLAIN + $ unset HGPLAINEXCEPT + + $ try 'p2(.)' + (func + ('symbol', 'p2') + ('symbol', '.')) + (func + ('symbol', 'p1') + ('symbol', '.')) + * set: + <baseset+ [8]> + 8 + + $ HGPLAIN=1 try 'p2(.)' + (func + ('symbol', 'p2') + ('symbol', '.')) + * set: + <baseset+ []> + + $ HGPLAIN=1 HGPLAINEXCEPT=revsetalias try 'p2(.)' + (func + ('symbol', 'p2') + ('symbol', '.')) + (func + ('symbol', 'p1') + ('symbol', '.')) + * set: + <baseset+ [8]> + 8 + + $ unset HGPLAIN + $ unset HGPLAINEXCEPT + test alias recursion $ try sincem