# no-check-code -- see T24862348 import test_hgsubversion_util class TestFetchSymlinks(test_hgsubversion_util.TestBase): stupid_mode_tests = True def test_symlinks(self): repo = self._load_fixture_and_fetch("symlinks.svndump") # 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) class TestMergeSpecial(test_hgsubversion_util.TestBase): stupid_mode_tests = True def test_special(self): repo = self._load_fixture_and_fetch("addspecial.svndump", subdir="trunk") ctx = repo["tip"] self.assertEqual(ctx["fnord"].flags(), "l") self.assertEqual(ctx["exe"].flags(), "x") if __name__ == "__main__": import silenttestrunner silenttestrunner.main(__name__)