view tests/test_binaryfiles.py @ 637:92f4a4b60696

rebuildmeta: optimize by removing quadratic time usage Calling ctx.children() for revision R visits all revisions greater than R. If I remember my algorithmics right, that's O(n^2). Performing an extra traversal, however, is O(n). A quick benchmark on a repository ~20k revisions: before: 445.27s user 1.10s system after: 7.25s user 0.25s system The resulting `svn' directories are exactly the same, and the tests continue to pass.
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
date Fri, 09 Jul 2010 22:18:27 +0200
parents 906d3f302b45
children d2ef7220a079
line wrap: on
line source

import unittest

import test_util

class TestFetchBinaryFiles(test_util.TestBase):
    def test_binaryfiles(self, stupid=False):
        repo = self._load_fixture_and_fetch('binaryfiles.svndump', stupid=stupid)
        self.assertEqual('cce7fe400d8d', str(repo['tip']))

    def test_binaryfiles_stupid(self):
        self.test_binaryfiles(True)

def suite():
    all = [unittest.TestLoader().loadTestsFromTestCase(TestFetchBinaryFiles),
          ]
    return unittest.TestSuite(all)