Mercurial > hgsubversion
view tests/test_fetch_symlinks.py @ 877:2c9f4c1686fa
svnrepo: don't break on old hg versions that lack pushkey
author | Augie Fackler <raf@durin42.com> |
---|---|
date | Fri, 20 Apr 2012 18:33:39 -0500 |
parents | 04729f3a3d17 |
children | bd12a4da0f35 |
line wrap: on
line source
import test_util import unittest class TestFetchSymlinks(test_util.TestBase): def test_symlinks(self, stupid=False): repo = self._load_fixture_and_fetch('symlinks.svndump', stupid=stupid) # Check symlinks throughout history links = { 0: { 'linka': 'a', 'linka2': 'a', 'd/linka': 'a', }, 1: { 'linkaa': 'a', 'linka2': 'a', 'd2/linka': 'a', }, 2: { 'linkaa': 'b', 'linka2': 'a', 'd2/linka': 'b', }, 3: { }, 4: { 'linka3': 'a', }, 5: { 'linka3': 'a', }, 6: { 'linka3': 'a', 'linka4': 'link to this', }, } for rev in repo: ctx = repo[rev] for f in ctx.manifest(): l = 'l' in ctx[f].flags() lref = f in links[rev] self.assertEqual(lref, l, '%r != %r for %s@%r' % (lref, l, f, rev)) if f in links[rev]: self.assertEqual(links[rev][f], ctx[f].data()) for f in links[rev]: self.assertTrue(f in ctx) def test_symlinks_stupid(self): self.test_symlinks(True) def suite(): all_tests = [unittest.TestLoader().loadTestsFromTestCase(TestFetchSymlinks), ] return unittest.TestSuite(all_tests)