Mercurial > hg
diff tests/test-custom-filters.t @ 12124:7edda6c7985d
tests: unify test-custom-filters
author | Nicolas Dumazet <nicdumz.commits@gmail.com> |
---|---|
date | Mon, 30 Aug 2010 18:57:48 +0900 |
parents | tests/test-custom-filters@a964ab624385 |
children | e5ccb9ea8266 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-custom-filters.t Mon Aug 30 18:57:48 2010 +0900 @@ -0,0 +1,69 @@ + $ hg init + + $ cat > .hg/hgrc <<EOF + > [extensions] + > prefixfilter = prefix.py + > [encode] + > *.txt = stripprefix: Copyright 2046, The Masters + > [decode] + > *.txt = insertprefix: Copyright 2046, The Masters + > EOF + + $ cat > prefix.py <<EOF + > from mercurial import util + > def stripprefix(s, cmd, filename, **kwargs): + > header = '%s\n' % cmd + > if s[:len(header)] != header: + > raise util.Abort('missing header "%s" in %s' % (cmd, filename)) + > return s[len(header):] + > def insertprefix(s, cmd): + > return '%s\n%s' % (cmd, s) + > def reposetup(ui, repo): + > repo.adddatafilter('stripprefix:', stripprefix) + > repo.adddatafilter('insertprefix:', insertprefix) + > EOF + + $ cat > .hgignore <<EOF + > .hgignore + > prefix.py + > prefix.pyc + > EOF + + $ cat > stuff.txt <<EOF + > Copyright 2046, The Masters + > Some stuff to ponder very carefully. + > EOF + $ hg add stuff.txt + $ hg ci -m stuff + +Repository data: + + $ hg cat stuff.txt + Some stuff to ponder very carefully. + +Fresh checkout: + + $ rm stuff.txt + $ hg up -C + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ cat stuff.txt + Copyright 2046, The Masters + Some stuff to ponder very carefully. + $ echo >> stuff.txt <<EOF + > Very very carefully. + > EOF + $ hg stat + M stuff.txt + + $ cat > morestuff.txt <<EOF + > Unauthorized material subject to destruction. + > EOF + +Problem encoding: + + $ hg add morestuff.txt + $ hg ci -m morestuff + abort: missing header "Copyright 2046, The Masters" in morestuff.txt + $ hg stat + M stuff.txt + A morestuff.txt