Mercurial > hgsubversion
view tests/test_push_eol.py @ 862:6ef6c413d6de
editor: work around svn 1.7 closing the output fp in apply_textdelta()
Calling close() on the output cStringIO when done with patching prevents us to
retrieve the result with getvalue().
Note: I found this bug has been fixed already by 794f3e41ec1e. I feel ignoring
the close() call is a little cleaner than storing the value before the
handler() call for there is no guarantee the handler does not modify the value
in its last call. Looking at text_delta.c, it does not in 1.7.1. So, do what
you want with this patch.
author | Patrick Mezard <patrick@mezard.eu> |
---|---|
date | Thu, 19 Apr 2012 15:08:09 +0200 |
parents | 312b37bc5e20 |
children | 04729f3a3d17 |
line wrap: on
line source
import test_util import unittest class TestPushEol(test_util.TestBase): def setUp(self): test_util.TestBase.setUp(self) test_util.load_fixture_and_fetch('emptyrepo.svndump', self.repo_path, self.wc_path) def _test_push_dirs(self, stupid): changes = [ # Root files with LF, CRLF and mixed EOL ('lf', 'lf', 'a\nb\n\nc'), ('crlf', 'crlf', 'a\r\nb\r\n\r\nc'), ('mixed', 'mixed', 'a\r\nb\n\r\nc\nd'), ] self.commitchanges(changes) self.pushrevisions(stupid) self.assertchanges(changes, self.repo['tip']) changes = [ # Update all files once, with same EOL ('lf', 'lf', 'a\nb\n\nc\na\nb\n\nc'), ('crlf', 'crlf', 'a\r\nb\r\n\r\nc\r\na\r\nb\r\n\r\nc'), ('mixed', 'mixed', 'a\r\nb\n\r\nc\nd\r\na\r\nb\n\r\nc\nd'), ] self.commitchanges(changes) self.pushrevisions(stupid) self.assertchanges(changes, self.repo['tip']) def test_push_dirs(self): self._test_push_dirs(False) def test_push_dirs_stupid(self): self._test_push_dirs(True) def suite(): all_tests = [unittest.TestLoader().loadTestsFromTestCase(TestPushEol), ] return unittest.TestSuite(all_tests)