mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 09:17:30 +03:00
fb54cc5694
Summary: Let's move hgsubversion to absolute_import, just to be consistent with the rest of Mercurial codebase. Reviewed By: markbt Differential Revision: D15392154 fbshipit-source-id: e4c32939aff0616790828da508f3feea158669e1
77 lines
2.6 KiB
Python
77 lines
2.6 KiB
Python
# no-check-code -- see T24862348
|
|
|
|
from __future__ import absolute_import
|
|
|
|
import shutil
|
|
|
|
import test_hgsubversion_util
|
|
from edenscm.hgext.hgsubversion import compathacks
|
|
|
|
|
|
class TestSingleDirClone(test_hgsubversion_util.TestBase):
|
|
stupid_mode_tests = True
|
|
|
|
def test_clone_single_dir_simple(self):
|
|
repo = self._load_fixture_and_fetch(
|
|
"branch_from_tag.svndump", layout="single", subdir=""
|
|
)
|
|
self.assertEqual(compathacks.branchset(repo), set(["default"]))
|
|
self.assertEqual(
|
|
sorted(repo["tip"].manifest().keys()),
|
|
[
|
|
"branches/branch_from_tag/alpha",
|
|
"branches/branch_from_tag/beta",
|
|
"tags/copied_tag/alpha",
|
|
"tags/copied_tag/beta",
|
|
"tags/tag_r3/alpha",
|
|
"tags/tag_r3/beta",
|
|
"trunk/alpha",
|
|
"trunk/beta",
|
|
],
|
|
)
|
|
|
|
def test_clone_subdir_is_file_prefix(self):
|
|
FIXTURE = "subdir_is_file_prefix.svndump"
|
|
repo = self._load_fixture_and_fetch(
|
|
FIXTURE, layout="single", subdir=test_hgsubversion_util.subdir[FIXTURE]
|
|
)
|
|
self.assertEqual(compathacks.branchset(repo), set(["default"]))
|
|
self.assertEqual(repo["tip"].manifest().keys(), ["flaf.txt"])
|
|
|
|
def test_externals_single(self):
|
|
repo = self._load_fixture_and_fetch("externals.svndump", layout="single")
|
|
for rev in repo:
|
|
assert ".hgsvnexternals" not in repo[rev].manifest()
|
|
return # TODO enable test when externals in single are fixed
|
|
expect = """[.]
|
|
-r2 ^/externals/project2@2 deps/project2
|
|
[subdir]
|
|
^/externals/project1 deps/project1
|
|
[subdir2]
|
|
^/externals/project1 deps/project1
|
|
"""
|
|
test = 2
|
|
self.assertEqual(self.repo[test][".hgsvnexternals"].data(), expect)
|
|
|
|
def test_externals_single_whole_repo(self):
|
|
# This is the test which demonstrates the brokenness of externals
|
|
return # TODO enable test when externals in single are fixed
|
|
repo = self._load_fixture_and_fetch(
|
|
"externals.svndump", layout="single", subdir=""
|
|
)
|
|
for rev in repo:
|
|
rc = repo[rev]
|
|
if ".hgsvnexternals" in rc:
|
|
extdata = rc[".hgsvnexternals"].data()
|
|
assert "[.]" not in extdata
|
|
print(extdata)
|
|
expect = "" # Not honestly sure what this should be...
|
|
test = 4
|
|
self.assertEqual(self.repo[test][".hgsvnexternals"].data(), expect)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
import silenttestrunner
|
|
|
|
silenttestrunner.main(__name__)
|