view tests/test_push_eol.py @ 681:26b85c0cf48a

setup: require Subvertpy when the SWIG bindings are unavailable. This isn't quite good enough if the Subversion installation is too old, but we'd have to replicate the actual version check to deal with that.
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
date Wed, 11 Aug 2010 19:57:35 +0200
parents d2ef7220a079
children 312b37bc5e20
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 = [unittest.TestLoader().loadTestsFromTestCase(TestPushEol),
          ]
    return unittest.TestSuite(all)