Mercurial > hg
diff tests/test-mq-eol @ 8811:8b35b08724eb
Make mq, record and transplant honor patch.eol
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Mon, 15 Jun 2009 00:03:27 +0200 |
parents | |
children | ea7c392f2b08 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-mq-eol Mon Jun 15 00:03:27 2009 +0200 @@ -0,0 +1,64 @@ +#!/bin/sh + +# Test interactions between mq and patch.eol + +echo "[extensions]" >> $HGRCPATH +echo "mq=" >> $HGRCPATH + +cat > makepatch.py <<EOF +f = file('eol.diff', 'wb') +w = f.write +w('test message\n') +w('diff --git a/a b/a\n') +w('--- a/a\n') +w('+++ b/a\n') +w('@@ -1,5 +1,5 @@\n') +w(' a\n') +w('-b\r\n') +w('+y\r\n') +w(' c\r\n') +w(' d\n') +w('-e\n') +w('\ No newline at end of file\n') +w('+z\r\n') +w('\ No newline at end of file\r\n') +EOF + +cat > cateol.py <<EOF +import sys +for line in file(sys.argv[1], 'rb'): + line = line.replace('\r', '<CR>') + line = line.replace('\n', '<LF>') + print line +EOF + +hg init repo +cd repo +echo '\.diff' > .hgignore +echo '\.rej' >> .hgignore + +# Test different --eol values +python -c 'file("a", "wb").write("a\nb\nc\nd\ne")' +hg ci -Am adda +python ../makepatch.py +hg qimport eol.diff +echo % should fail in strict mode +hg qpush +hg qpop +echo % invalid eol +hg --config patch.eol='LFCR' qpush +hg qpop +echo % force LF +hg --config patch.eol='CRLF' qpush +hg qrefresh +python ../cateol.py .hg/patches/eol.diff +python ../cateol.py a +hg qpop +echo % push again forcing LF and compare revisions +hg --config patch.eol='CRLF' qpush +python ../cateol.py a +hg qpop +echo % push again without LF and compare revisions +hg qpush +python ../cateol.py a +hg qpop