Mercurial > hg
changeset 12420:e9db6bc37659
tests: unify test-eol-patch
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 26 Sep 2010 13:41:32 -0500 |
parents | f6a91fcd189a |
children | 0ae7cad68842 |
files | tests/test-eol-patch tests/test-eol-patch.out tests/test-eol-patch.t |
diffstat | 3 files changed, 400 insertions(+), 413 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-eol-patch Sun Sep 26 13:41:32 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,103 +0,0 @@ -#!/bin/sh - -cat > $HGRCPATH <<EOF -[diff] -git = 1 -EOF - -seteol () { - if [ $1 = "LF" ]; then - EOL='\n' - else - EOL='\r\n' - fi -} - -makerepo () { - seteol $1 - echo - echo "# ==== setup $1 repository ====" - echo '% hg init' - hg init repo - cd repo - - cat > .hgeol <<EOF -[repository] -native = $1 - -[patterns] -unix.txt = LF -win.txt = CRLF -**.txt = native -EOF - - printf "first\r\nsecond\r\nthird\r\n" > win.txt - printf "first\nsecond\nthird\n" > unix.txt - printf "first${EOL}second${EOL}third${EOL}" > native.txt - hg commit --addremove -m 'checkin' - cd .. -} - -dotest () { - seteol $1 - - echo - echo "% hg clone repo repo-$1" - hg clone --noupdate repo repo-$1 - cd repo-$1 - - cat > .hg/hgrc <<EOF -[extensions] -eol = - -[eol] -native = $1 -EOF - - hg update - echo '% printrepr.py native.txt' - python $TESTDIR/printrepr.py < native.txt - - echo '% printrepr.py unix.txt' - python $TESTDIR/printrepr.py < unix.txt - - echo '% printrepr.py win.txt' - python $TESTDIR/printrepr.py < win.txt - - printf "first${EOL}third${EOL}" > native.txt - printf "first\r\nthird\r\n" > win.txt - printf "first\nthird\n" > unix.txt - - echo '% hg diff' - hg diff > p - python $TESTDIR/printrepr.py < p - - echo '% hg revert' - hg revert --all - - echo '% hg import' - hg import -m 'patch' p - - echo '% printrepr.py native.txt' - python $TESTDIR/printrepr.py < native.txt - echo '% printrepr.py unix.txt' - python $TESTDIR/printrepr.py < unix.txt - echo '% printrepr.py win.txt' - python $TESTDIR/printrepr.py < win.txt - - echo '% hg diff -c tip' - hg diff -c tip | python $TESTDIR/printrepr.py - - cd .. - rm -r repo-$1 -} - -makerepo LF -dotest LF -dotest CRLF -rm -r repo - -makerepo CRLF -dotest LF -dotest CRLF -rm -r repo
--- a/tests/test-eol-patch.out Sun Sep 26 13:41:32 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,310 +0,0 @@ - -# ==== setup LF repository ==== -% hg init -adding .hgeol -adding native.txt -adding unix.txt -adding win.txt - -% hg clone repo repo-LF -4 files updated, 0 files merged, 0 files removed, 0 files unresolved -% printrepr.py native.txt -first -second -third -% printrepr.py unix.txt -first -second -third -% printrepr.py win.txt -first\r -second\r -third\r -% hg diff -diff --git a/native.txt b/native.txt ---- a/native.txt -+++ b/native.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/unix.txt b/unix.txt ---- a/unix.txt -+++ b/unix.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/win.txt b/win.txt ---- a/win.txt -+++ b/win.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r -% hg revert -reverting native.txt -reverting unix.txt -reverting win.txt -% hg import -applying p -% printrepr.py native.txt -first -third -% printrepr.py unix.txt -first -third -% printrepr.py win.txt -first\r -third\r -% hg diff -c tip -diff --git a/native.txt b/native.txt ---- a/native.txt -+++ b/native.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/unix.txt b/unix.txt ---- a/unix.txt -+++ b/unix.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/win.txt b/win.txt ---- a/win.txt -+++ b/win.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r - -% hg clone repo repo-CRLF -4 files updated, 0 files merged, 0 files removed, 0 files unresolved -% printrepr.py native.txt -first\r -second\r -third\r -% printrepr.py unix.txt -first -second -third -% printrepr.py win.txt -first\r -second\r -third\r -% hg diff -diff --git a/native.txt b/native.txt ---- a/native.txt -+++ b/native.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/unix.txt b/unix.txt ---- a/unix.txt -+++ b/unix.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/win.txt b/win.txt ---- a/win.txt -+++ b/win.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r -% hg revert -reverting native.txt -reverting unix.txt -reverting win.txt -% hg import -applying p -% printrepr.py native.txt -first\r -third\r -% printrepr.py unix.txt -first -third -% printrepr.py win.txt -first\r -third\r -% hg diff -c tip -diff --git a/native.txt b/native.txt ---- a/native.txt -+++ b/native.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/unix.txt b/unix.txt ---- a/unix.txt -+++ b/unix.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/win.txt b/win.txt ---- a/win.txt -+++ b/win.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r - -# ==== setup CRLF repository ==== -% hg init -adding .hgeol -adding native.txt -adding unix.txt -adding win.txt - -% hg clone repo repo-LF -4 files updated, 0 files merged, 0 files removed, 0 files unresolved -% printrepr.py native.txt -first -second -third -% printrepr.py unix.txt -first -second -third -% printrepr.py win.txt -first\r -second\r -third\r -% hg diff -diff --git a/native.txt b/native.txt ---- a/native.txt -+++ b/native.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r -diff --git a/unix.txt b/unix.txt ---- a/unix.txt -+++ b/unix.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/win.txt b/win.txt ---- a/win.txt -+++ b/win.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r -% hg revert -reverting native.txt -reverting unix.txt -reverting win.txt -% hg import -applying p -% printrepr.py native.txt -first -third -% printrepr.py unix.txt -first -third -% printrepr.py win.txt -first\r -third\r -% hg diff -c tip -diff --git a/native.txt b/native.txt ---- a/native.txt -+++ b/native.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r -diff --git a/unix.txt b/unix.txt ---- a/unix.txt -+++ b/unix.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/win.txt b/win.txt ---- a/win.txt -+++ b/win.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r - -% hg clone repo repo-CRLF -4 files updated, 0 files merged, 0 files removed, 0 files unresolved -% printrepr.py native.txt -first\r -second\r -third\r -% printrepr.py unix.txt -first -second -third -% printrepr.py win.txt -first\r -second\r -third\r -% hg diff -diff --git a/native.txt b/native.txt ---- a/native.txt -+++ b/native.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r -diff --git a/unix.txt b/unix.txt ---- a/unix.txt -+++ b/unix.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/win.txt b/win.txt ---- a/win.txt -+++ b/win.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r -% hg revert -reverting native.txt -reverting unix.txt -reverting win.txt -% hg import -applying p -% printrepr.py native.txt -first\r -third\r -% printrepr.py unix.txt -first -third -% printrepr.py win.txt -first\r -third\r -% hg diff -c tip -diff --git a/native.txt b/native.txt ---- a/native.txt -+++ b/native.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r -diff --git a/unix.txt b/unix.txt ---- a/unix.txt -+++ b/unix.txt -@@ -1,3 +1,2 @@ - first --second - third -diff --git a/win.txt b/win.txt ---- a/win.txt -+++ b/win.txt -@@ -1,3 +1,2 @@ - first\r --second\r - third\r
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-eol-patch.t Sun Sep 26 13:41:32 2010 -0500 @@ -0,0 +1,400 @@ +Test EOL patching + + $ cat > $HGRCPATH <<EOF + > [diff] + > git = 1 + > EOF + +Set up helpers + + $ seteol () { + > if [ $1 = "LF" ]; then + > EOL='\n' + > else + > EOL='\r\n' + > fi + > } + + $ makerepo () { + > seteol $1 + > echo + > echo "# ==== setup $1 repository ====" + > echo '% hg init' + > hg init repo + > cd repo + > cat > .hgeol <<EOF + > [repository] + > native = $1 + > [patterns] + > unix.txt = LF + > win.txt = CRLF + > **.txt = native + > EOF + > printf "first\r\nsecond\r\nthird\r\n" > win.txt + > printf "first\nsecond\nthird\n" > unix.txt + > printf "first${EOL}second${EOL}third${EOL}" > native.txt + > hg commit --addremove -m 'checkin' + > cd .. + > } + + $ dotest () { + > seteol $1 + > echo + > echo "% hg clone repo repo-$1" + > hg clone --noupdate repo repo-$1 + > cd repo-$1 + > cat > .hg/hgrc <<EOF + > [extensions] + > eol = + > [eol] + > native = $1 + > EOF + > hg update + > echo '% printrepr.py native.txt' + > python $TESTDIR/printrepr.py < native.txt + > echo '% printrepr.py unix.txt' + > python $TESTDIR/printrepr.py < unix.txt + > echo '% printrepr.py win.txt' + > python $TESTDIR/printrepr.py < win.txt + > printf "first${EOL}third${EOL}" > native.txt + > printf "first\r\nthird\r\n" > win.txt + > printf "first\nthird\n" > unix.txt + > echo '% hg diff' + > hg diff > p + > python $TESTDIR/printrepr.py < p + > echo '% hg revert' + > hg revert --all + > echo '% hg import' + > hg import -m 'patch' p + > echo '% printrepr.py native.txt' + > python $TESTDIR/printrepr.py < native.txt + > echo '% printrepr.py unix.txt' + > python $TESTDIR/printrepr.py < unix.txt + > echo '% printrepr.py win.txt' + > python $TESTDIR/printrepr.py < win.txt + > echo '% hg diff -c tip' + > hg diff -c tip | python $TESTDIR/printrepr.py + > cd .. + > rm -r repo-$1 + > } + +Run tests + + $ makerepo LF + + # ==== setup LF repository ==== + % hg init + adding .hgeol + adding native.txt + adding unix.txt + adding win.txt + $ dotest LF + + % hg clone repo repo-LF + 4 files updated, 0 files merged, 0 files removed, 0 files unresolved + % printrepr.py native.txt + first + second + third + % printrepr.py unix.txt + first + second + third + % printrepr.py win.txt + first\r + second\r + third\r + % hg diff + diff --git a/native.txt b/native.txt + --- a/native.txt + +++ b/native.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/unix.txt b/unix.txt + --- a/unix.txt + +++ b/unix.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/win.txt b/win.txt + --- a/win.txt + +++ b/win.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + % hg revert + reverting native.txt + reverting unix.txt + reverting win.txt + % hg import + applying p + % printrepr.py native.txt + first + third + % printrepr.py unix.txt + first + third + % printrepr.py win.txt + first\r + third\r + % hg diff -c tip + diff --git a/native.txt b/native.txt + --- a/native.txt + +++ b/native.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/unix.txt b/unix.txt + --- a/unix.txt + +++ b/unix.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/win.txt b/win.txt + --- a/win.txt + +++ b/win.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + $ dotest CRLF + + % hg clone repo repo-CRLF + 4 files updated, 0 files merged, 0 files removed, 0 files unresolved + % printrepr.py native.txt + first\r + second\r + third\r + % printrepr.py unix.txt + first + second + third + % printrepr.py win.txt + first\r + second\r + third\r + % hg diff + diff --git a/native.txt b/native.txt + --- a/native.txt + +++ b/native.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/unix.txt b/unix.txt + --- a/unix.txt + +++ b/unix.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/win.txt b/win.txt + --- a/win.txt + +++ b/win.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + % hg revert + reverting native.txt + reverting unix.txt + reverting win.txt + % hg import + applying p + % printrepr.py native.txt + first\r + third\r + % printrepr.py unix.txt + first + third + % printrepr.py win.txt + first\r + third\r + % hg diff -c tip + diff --git a/native.txt b/native.txt + --- a/native.txt + +++ b/native.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/unix.txt b/unix.txt + --- a/unix.txt + +++ b/unix.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/win.txt b/win.txt + --- a/win.txt + +++ b/win.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + $ rm -r repo + $ makerepo CRLF + + # ==== setup CRLF repository ==== + % hg init + adding .hgeol + adding native.txt + adding unix.txt + adding win.txt + $ dotest LF + + % hg clone repo repo-LF + 4 files updated, 0 files merged, 0 files removed, 0 files unresolved + % printrepr.py native.txt + first + second + third + % printrepr.py unix.txt + first + second + third + % printrepr.py win.txt + first\r + second\r + third\r + % hg diff + diff --git a/native.txt b/native.txt + --- a/native.txt + +++ b/native.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + diff --git a/unix.txt b/unix.txt + --- a/unix.txt + +++ b/unix.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/win.txt b/win.txt + --- a/win.txt + +++ b/win.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + % hg revert + reverting native.txt + reverting unix.txt + reverting win.txt + % hg import + applying p + % printrepr.py native.txt + first + third + % printrepr.py unix.txt + first + third + % printrepr.py win.txt + first\r + third\r + % hg diff -c tip + diff --git a/native.txt b/native.txt + --- a/native.txt + +++ b/native.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + diff --git a/unix.txt b/unix.txt + --- a/unix.txt + +++ b/unix.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/win.txt b/win.txt + --- a/win.txt + +++ b/win.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + $ dotest CRLF + + % hg clone repo repo-CRLF + 4 files updated, 0 files merged, 0 files removed, 0 files unresolved + % printrepr.py native.txt + first\r + second\r + third\r + % printrepr.py unix.txt + first + second + third + % printrepr.py win.txt + first\r + second\r + third\r + % hg diff + diff --git a/native.txt b/native.txt + --- a/native.txt + +++ b/native.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + diff --git a/unix.txt b/unix.txt + --- a/unix.txt + +++ b/unix.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/win.txt b/win.txt + --- a/win.txt + +++ b/win.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + % hg revert + reverting native.txt + reverting unix.txt + reverting win.txt + % hg import + applying p + % printrepr.py native.txt + first\r + third\r + % printrepr.py unix.txt + first + third + % printrepr.py win.txt + first\r + third\r + % hg diff -c tip + diff --git a/native.txt b/native.txt + --- a/native.txt + +++ b/native.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + diff --git a/unix.txt b/unix.txt + --- a/unix.txt + +++ b/unix.txt + @@ -1,3 +1,2 @@ + first + -second + third + diff --git a/win.txt b/win.txt + --- a/win.txt + +++ b/win.txt + @@ -1,3 +1,2 @@ + first\r + -second\r + third\r + $ rm -r repo