Mercurial > public > mercurial-scm > hg
diff tests/test-keyword.t @ 12630:94926263b7ab
keyword: specific regular expressions depending on read mode
More safeguarding against accidental (un)expansion:
Reading filelog: act only on \$(kw1|kw2|..)\$ as keywords are always
stored unexpanded.
Reading wdir: act only on \$(kw1|kw2|..): [^$\n\r]*? \$ as we only
are interested in expanded keywords in this situation.
Note: we cannot use ..): [^$\n\r]+? \$ because e.g.
the {branch} template might be empty.
hg record is a special case as we read from the working directory and
need one regex each for modified and added files. Therefore test
recording an added file.
This way we finally also forbid sequences like $Id: $ being treated
as keywords.
author | Christian Ebert <blacktrash@gmx.net> |
---|---|
date | Fri, 08 Oct 2010 18:39:46 +0100 |
parents | c623752b1af5 |
children | eb09e3c9c471 |
line wrap: on
line diff
--- a/tests/test-keyword.t Fri Oct 08 18:39:46 2010 +0100 +++ b/tests/test-keyword.t Fri Oct 08 18:39:46 2010 +0100 @@ -373,7 +373,6 @@ $ hg status -A a C a - $ rm msg rollback and revert expansion @@ -418,6 +417,25 @@ $ hg update -C 1 files updated, 0 files merged, 0 files removed, 0 files unresolved +record added file + + $ echo '$Id$' > r + $ hg add r + $ hg -v record -l msg -d '1 12' r<<EOF + > y + > EOF + diff --git a/r b/r + new file mode 100644 + examine changes to 'r'? [Ynsfdaq?] + r + committed changeset 3:899491280810 + overwriting r expanding keywords + $ hg --verbose rollback + rolling back to revision 2 (undo commit) + overwriting r shrinking keywords + $ hg forget r + $ rm msg r + Test patch queue repo $ hg init --mq