diff -r 4263359f7eac -r 10c3385fa89e tests/test-eol-hook.t --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-eol-hook.t Sun Sep 26 13:41:32 2010 -0500 @@ -0,0 +1,63 @@ +Test the EOL hook + + $ cat > $HGRCPATH < [diff] + > git = True + > EOF + $ hg init main + $ cat > main/.hg/hgrc < [extensions] + > eol = + > + > [hooks] + > pretxnchangegroup = python:hgext.eol.hook + > EOF + $ hg clone main fork + updating to branch default + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ cd fork + +Create repo + $ cat > .hgeol < [patterns] + > mixed.txt = BIN + > **.txt = native + > EOF + $ hg add .hgeol + $ hg commit -m 'Commit .hgeol' + + $ printf "first\nsecond\nthird\n" > a.txt + $ hg add a.txt + $ hg commit -m 'LF a.txt' + $ hg push ../main + pushing to ../main + searching for changes + adding changesets + adding manifests + adding file changes + added 2 changesets with 2 changes to 2 files + + $ printf "first\r\nsecond\r\nthird\n" > a.txt + $ hg commit -m 'CRLF a.txt' + $ hg push ../main + pushing to ../main + searching for changes + adding changesets + adding manifests + adding file changes + added 1 changesets with 1 changes to 1 files + error: pretxnchangegroup hook failed: a.txt should not have CRLF line endings + transaction abort! + rollback completed + abort: a.txt should not have CRLF line endings + [255] + + $ printf "first\nsecond\nthird\n" > a.txt + $ hg commit -m 'LF a.txt (fixed)' + $ hg push ../main + pushing to ../main + searching for changes + adding changesets + adding manifests + adding file changes + added 2 changesets with 2 changes to 1 files