tests/test-mactext.t
changeset 12458 9446bd059da3
parent 8167 6c82beaaa11a
child 15243 1e9451476bf8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-mactext.t	Sun Sep 26 13:43:21 2010 -0500
@@ -0,0 +1,40 @@
+
+  $ cat > unix2mac.py <<EOF
+  > import sys
+  > 
+  > for path in sys.argv[1:]:
+  >     data = file(path, 'rb').read()
+  >     data = data.replace('\n', '\r')
+  >     file(path, 'wb').write(data)
+  > EOF
+  $ cat > print.py <<EOF
+  > import sys
+  > print(sys.stdin.read().replace('\n', '<LF>').replace('\r', '<CR>').replace('\0', '<NUL>'))
+  > EOF
+  $ hg init
+  $ echo '[hooks]' >> .hg/hgrc
+  $ echo 'pretxncommit.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc
+  $ echo 'pretxnchangegroup.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc
+  $ cat .hg/hgrc
+  [hooks]
+  pretxncommit.cr = python:hgext.win32text.forbidcr
+  pretxnchangegroup.cr = python:hgext.win32text.forbidcr
+  $ echo
+  
+  $ echo hello > f
+  $ hg add f
+  $ hg ci -m 1
+  $ echo
+  
+  $ python unix2mac.py f
+  $ hg ci -m 2
+  Attempt to commit or push text file(s) using CR line endings
+  in dea860dc51ec: f
+  transaction abort!
+  rollback completed
+  abort: pretxncommit.cr hook failed
+  [255]
+  $ hg cat f | python print.py
+  hello<LF>
+  $ cat f | python print.py
+  hello<CR>