Mercurial > hgsubversion
comparison tests/test_externals.py @ 1554:258fb67fb956
externals: correctly enable hgsubversion externals support during tests
For now this is defaulted to off, because it's a subclass of the
Subversion support which we've disabled by default in core.
| author | Augie Fackler <raf@durin42.com> |
|---|---|
| date | Sat, 24 Mar 2018 15:44:11 -0400 |
| parents | 7d82131e7801 |
| children |
comparison
equal
deleted
inserted
replaced
| 1553:601eaa89ca98 | 1554:258fb67fb956 |
|---|---|
| 15 | 15 |
| 16 from hgsubversion import svnexternals | 16 from hgsubversion import svnexternals |
| 17 | 17 |
| 18 class TestFetchExternals(test_util.TestBase): | 18 class TestFetchExternals(test_util.TestBase): |
| 19 stupid_mode_tests = True | 19 stupid_mode_tests = True |
| 20 | |
| 21 def setUp(self): | |
| 22 test_util.TestBase.setUp(self) | |
| 23 with open(self.hgrc, 'a') as rc: | |
| 24 rc.write('\n[subrepos]\nhgsubversion:allowed = true\n') | |
| 25 | |
| 26 def ui(self, *args, **kwargs): | |
| 27 kwargs['subrepo'] = True | |
| 28 return test_util.TestBase.ui(self, *args, **kwargs) | |
| 20 | 29 |
| 21 def test_externalsfile(self): | 30 def test_externalsfile(self): |
| 22 f = svnexternals.externalsfile() | 31 f = svnexternals.externalsfile() |
| 23 f['t1'] = 'dir1 -r10 svn://foobar' | 32 f['t1'] = 'dir1 -r10 svn://foobar' |
| 24 f['t 2'] = 'dir2 -r10 svn://foobar' | 33 f['t 2'] = 'dir2 -r10 svn://foobar' |
| 137 for d in nodeps: | 146 for d in nodeps: |
| 138 p = os.path.join(repo.root, d) | 147 p = os.path.join(repo.root, d) |
| 139 self.assertTrue(not os.path.isdir(p), | 148 self.assertTrue(not os.path.isdir(p), |
| 140 'unexpected: %s@%r' % (d, rev)) | 149 'unexpected: %s@%r' % (d, rev)) |
| 141 | 150 |
| 142 ui = self.ui() | 151 ui = self.ui(subrepo=True) |
| 143 repo = self._load_fixture_and_fetch('externals.svndump') | 152 repo = self._load_fixture_and_fetch('externals.svndump') |
| 144 commands.update(ui, repo) | 153 commands.update(ui, repo) |
| 145 checkdeps(['deps/project1'], [], repo, 0) | 154 checkdeps(['deps/project1'], [], repo, 0) |
| 146 checkdeps(['deps/project1', 'deps/project2'], [], repo, 1) | 155 checkdeps(['deps/project1', 'deps/project2'], [], repo, 1) |
| 147 checkdeps(['subdir/deps/project1', 'subdir2/deps/project1', | 156 checkdeps(['subdir/deps/project1', 'subdir2/deps/project1', |
| 237 'unexpected: %s@%r' % (d, repo[None].rev())) | 246 'unexpected: %s@%r' % (d, repo[None].rev())) |
| 238 | 247 |
| 239 if subrepo is None: | 248 if subrepo is None: |
| 240 return | 249 return |
| 241 | 250 |
| 242 ui = self.ui() | 251 ui = self.ui(subrepo=True) |
| 243 repo = self._load_fixture_and_fetch('externals.svndump', | 252 repo = self._load_fixture_and_fetch('externals.svndump', |
| 244 externals='subrepos') | 253 externals='subrepos') |
| 245 checkdeps(ui, repo, 0, ['deps/project1'], []) | 254 checkdeps(ui, repo, 0, ['deps/project1'], []) |
| 246 checkdeps(ui, repo, 1, ['deps/project1', 'deps/project2'], []) | 255 checkdeps(ui, repo, 1, ['deps/project1', 'deps/project2'], []) |
| 247 checkdeps(ui, repo, 2, ['subdir/deps/project1', 'subdir2/deps/project1', | 256 checkdeps(ui, repo, 2, ['subdir/deps/project1', 'subdir2/deps/project1', |
| 269 | 278 |
| 270 class TestPushExternals(test_util.TestBase): | 279 class TestPushExternals(test_util.TestBase): |
| 271 stupid_mode_tests = True | 280 stupid_mode_tests = True |
| 272 obsolete_mode_tests = True | 281 obsolete_mode_tests = True |
| 273 | 282 |
| 283 def setUp(self): | |
| 284 test_util.TestBase.setUp(self) | |
| 285 with open(self.hgrc, 'a') as rc: | |
| 286 rc.write('\n[subrepos]\nhgsubversion:allowed = true\n') | |
| 287 | |
| 288 def ui(self, *args, **kwargs): | |
| 289 kwargs['subrepo'] = True | |
| 290 return test_util.TestBase.ui(self, *args, **kwargs) | |
| 291 | |
| 274 def test_push_externals(self): | 292 def test_push_externals(self): |
| 275 repo = self._load_fixture_and_fetch('pushexternals.svndump') | 293 repo = self._load_fixture_and_fetch('pushexternals.svndump') |
| 276 # Add a new reference on an existing and non-existing directory | 294 # Add a new reference on an existing and non-existing directory |
| 277 changes = [ | 295 changes = [ |
| 278 ('.hgsvnexternals', '.hgsvnexternals', | 296 ('.hgsvnexternals', '.hgsvnexternals', |
