Mercurial > hgsubversion
annotate tests/test_utility_commands.py @ 1541:adba152a5177
test_util: make developer warnings cause our tests to fail
Previously hgsubversion didn't get any help from develwarn calls,
because we don't use core's testrunner. The upstream configitem
refactor was easier to hunt down using the develwarn being a failure,
which prompted this code. It also exposed several locking correctness
bugs, so it feels like it's worth keeping around long term.
We don't bother with develwarn on anything so old that we don't try to
use smartset. The smartset deprecation was not handled gracefully, so
hg complains for many versions without actually breaking anything, and
it'd pointlessly complicate our code to handle smartset living in
multiple places between when the warning was introduced and the
present.
author | Augie Fackler <raf@durin42.com> |
---|---|
date | Sun, 29 Oct 2017 09:07:12 -0400 |
parents | 0ebcc5bbf692 |
children | 8410a978c650 |
rev | line source |
---|---|
643
d2ef7220a079
tests: import test_util as the first module in all relevant tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
578
diff
changeset
|
1 import test_util |
d2ef7220a079
tests: import test_util as the first module in all relevant tests
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
578
diff
changeset
|
2 |
149
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
3 import os |
153
46f6b872c988
tests: Fix some missing suite definitions so that running the full testsuite
Augie Fackler <durin42@gmail.com>
parents:
149
diff
changeset
|
4 import unittest |
880
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
5 import re |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
6 |
264
112d57bb736e
rebase: moved to wrappers, now a wrapper around rebase triggered with --svn.
Augie Fackler <durin42@gmail.com>
parents:
257
diff
changeset
|
7 from hgext import rebase |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
8 from mercurial import hg |
149
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
9 from mercurial import revlog |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
10 from mercurial import context |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
11 from mercurial import node |
347
537de0300510
Remove the 'outgoing' wrapper, and use the Mercurial infrastructure instead.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
337
diff
changeset
|
12 from mercurial import commands |
746
174f03c288d4
svnmeta: abort when no UUID given and none is stored on disk.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
743
diff
changeset
|
13 from mercurial import util as hgutil |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
14 |
337
46e69be8e2c8
Reorganize to have a more conventional module structure.
Augie Fackler <durin42@gmail.com>
parents:
331
diff
changeset
|
15 from hgsubversion import util |
578
de384e4e0423
merge commands from utility_commands into svncommands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
576
diff
changeset
|
16 from hgsubversion import svncommands |
897
6bc8046e3d0a
move verify to a file of its own
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
892
diff
changeset
|
17 from hgsubversion import verify |
337
46e69be8e2c8
Reorganize to have a more conventional module structure.
Augie Fackler <durin42@gmail.com>
parents:
331
diff
changeset
|
18 from hgsubversion import wrappers |
1204
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
19 from hgsubversion import compathacks |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
20 |
178
33ebdcb75bcd
test_utility_commands: fix normalized URL references under Windows
Patrick Mezard <pmezard@gmail.com>
parents:
160
diff
changeset
|
21 expected_info_output = '''URL: %(repourl)s/%(branch)s |
33ebdcb75bcd
test_utility_commands: fix normalized URL references under Windows
Patrick Mezard <pmezard@gmail.com>
parents:
160
diff
changeset
|
22 Repository Root: %(repourl)s |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
23 Repository UUID: df2126f7-00ab-4d49-b42c-7e981dde0bcf |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
24 Revision: %(rev)s |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
25 Node Kind: directory |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
26 Last Changed Author: durin |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
27 Last Changed Rev: %(rev)s |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
28 Last Changed Date: %(date)s |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
29 ''' |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
30 |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
31 def repourl(repo_path): |
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
32 return util.normalize_url(test_util.fileurl(repo_path)) |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
33 |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
34 class UtilityTests(test_util.TestBase): |
1077
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
35 stupid_mode_tests = True |
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
36 |
1092
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
37 def test_info_output(self, custom=False): |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
38 if custom: |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
39 config = { |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
40 'hgsubversionbranch.default': 'trunk', |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
41 'hgsubversionbranch.the_branch': 'branches/the_branch', |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
42 } |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
43 else: |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
44 config = {} |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
45 repo, repo_path = self.load_and_fetch('two_heads.svndump', config=config) |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
46 hg.update(self.repo, 'the_branch') |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
47 u = self.ui() |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
48 u.pushbuffer() |
578
de384e4e0423
merge commands from utility_commands into svncommands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
576
diff
changeset
|
49 svncommands.info(u, self.repo) |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
50 actual = u.popbuffer() |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
51 expected = (expected_info_output % |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
52 {'date': '2008-10-08 01:39:05 +0000 (Wed, 08 Oct 2008)', |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
53 'repourl': repourl(repo_path), |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
54 'branch': 'branches/the_branch', |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
55 'rev': 5, |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
56 }) |
743
045120d3a110
test_utility_commands: use self.assertMultiLineEqual().
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
57 self.assertMultiLineEqual(actual, expected) |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
58 hg.update(self.repo, 'default') |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
59 u.pushbuffer() |
578
de384e4e0423
merge commands from utility_commands into svncommands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
576
diff
changeset
|
60 svncommands.info(u, self.repo) |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
61 actual = u.popbuffer() |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
62 expected = (expected_info_output % |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
63 {'date': '2008-10-08 01:39:29 +0000 (Wed, 08 Oct 2008)', |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
64 'repourl': repourl(repo_path), |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
65 'branch': 'trunk', |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
66 'rev': 6, |
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
67 }) |
743
045120d3a110
test_utility_commands: use self.assertMultiLineEqual().
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
68 self.assertMultiLineEqual(actual, expected) |
503
00ecb2bc005c
Add a -r option to hg svn. Use with hg svn info to change the mercurial rev.
Jason Ostrander <jason@sentilla.com>
parents:
403
diff
changeset
|
69 hg.update(self.repo, 'default') |
00ecb2bc005c
Add a -r option to hg svn. Use with hg svn info to change the mercurial rev.
Jason Ostrander <jason@sentilla.com>
parents:
403
diff
changeset
|
70 u.pushbuffer() |
578
de384e4e0423
merge commands from utility_commands into svncommands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
576
diff
changeset
|
71 svncommands.info(u, self.repo, rev=3) |
503
00ecb2bc005c
Add a -r option to hg svn. Use with hg svn info to change the mercurial rev.
Jason Ostrander <jason@sentilla.com>
parents:
403
diff
changeset
|
72 actual = u.popbuffer() |
00ecb2bc005c
Add a -r option to hg svn. Use with hg svn info to change the mercurial rev.
Jason Ostrander <jason@sentilla.com>
parents:
403
diff
changeset
|
73 expected = (expected_info_output % |
00ecb2bc005c
Add a -r option to hg svn. Use with hg svn info to change the mercurial rev.
Jason Ostrander <jason@sentilla.com>
parents:
403
diff
changeset
|
74 {'date': '2008-10-08 01:39:05 +0000 (Wed, 08 Oct 2008)', |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
75 'repourl': repourl(repo_path), |
503
00ecb2bc005c
Add a -r option to hg svn. Use with hg svn info to change the mercurial rev.
Jason Ostrander <jason@sentilla.com>
parents:
403
diff
changeset
|
76 'branch': 'branches/the_branch', |
00ecb2bc005c
Add a -r option to hg svn. Use with hg svn info to change the mercurial rev.
Jason Ostrander <jason@sentilla.com>
parents:
403
diff
changeset
|
77 'rev': 5, |
00ecb2bc005c
Add a -r option to hg svn. Use with hg svn info to change the mercurial rev.
Jason Ostrander <jason@sentilla.com>
parents:
403
diff
changeset
|
78 }) |
743
045120d3a110
test_utility_commands: use self.assertMultiLineEqual().
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
79 self.assertMultiLineEqual(actual, expected) |
921
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
80 destpath = self.wc_path + '_clone' |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
81 test_util.hgclone(u, self.repo, destpath) |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
82 repo2 = hg.repository(u, destpath) |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
83 repo2.ui.setconfig('paths', 'default-push', |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
84 self.repo.ui.config('paths', 'default')) |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
85 hg.update(repo2, 'default') |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
86 svncommands.rebuildmeta(u, repo2, []) |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
87 u.pushbuffer() |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
88 svncommands.info(u, repo2) |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
89 actual = u.popbuffer() |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
90 expected = (expected_info_output % |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
91 {'date': '2008-10-08 01:39:29 +0000 (Wed, 08 Oct 2008)', |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
92 'repourl': repourl(repo_path), |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
93 'branch': 'trunk', |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
94 'rev': 6, |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
95 }) |
8faa91951bb1
svnremoterepo: use and prefer default-push
David Schleimer <dschleimer@fb.com>
parents:
918
diff
changeset
|
96 self.assertMultiLineEqual(actual, expected) |
139
89a737852d33
utility_commands: Add tests for url and info. Fix a bad mock in the process.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
97 |
1092
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
98 def test_info_output_custom(self): |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
99 self.test_info_output(custom=True) |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
100 |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
101 def test_info_single(self, custom=False): |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
102 if custom: |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
103 subdir=None |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
104 config = { |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
105 'hgsubversionbranch.default': 'trunk/' |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
106 } |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
107 else: |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
108 subdir='trunk' |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
109 config = {} |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
110 repo, repo_path = self.load_and_fetch('two_heads.svndump', |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
111 subdir=subdir, |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
112 config=config) |
549
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
113 hg.update(self.repo, 'tip') |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
114 u = self.ui() |
549
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
115 u.pushbuffer() |
578
de384e4e0423
merge commands from utility_commands into svncommands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
576
diff
changeset
|
116 svncommands.info(u, self.repo) |
549
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
117 actual = u.popbuffer() |
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
118 expected = (expected_info_output % |
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
119 {'date': '2008-10-08 01:39:29 +0000 (Wed, 08 Oct 2008)', |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
120 'repourl': repourl(repo_path), |
549
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
121 'branch': 'trunk', |
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
122 'rev': 6, |
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
123 }) |
743
045120d3a110
test_utility_commands: use self.assertMultiLineEqual().
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
124 self.assertMultiLineEqual(expected, actual) |
549
b97f5734e5a8
utility_commands: unbreak hg svn info with single-directory clones
Augie Fackler <durin42@gmail.com>
parents:
503
diff
changeset
|
125 |
1092
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
126 def test_info_custom_single(self): |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
127 self.test_info_single(custom=True) |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
128 |
754
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
129 def test_missing_metadata(self): |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
130 self._load_fixture_and_fetch('two_heads.svndump') |
1503
180e0d5fba2e
join: remove uses of repo.join/wjoin
Durham Goode <durham@fb.com>
parents:
1204
diff
changeset
|
131 os.remove(self.repo.vfs.join('svn/branch_info')) |
989
68191be64af8
updatemeta: fix missing errno import
Patrick Mezard <patrick@mezard.eu>
parents:
921
diff
changeset
|
132 svncommands.updatemeta(self.ui(), self.repo, []) |
68191be64af8
updatemeta: fix missing errno import
Patrick Mezard <patrick@mezard.eu>
parents:
921
diff
changeset
|
133 |
1503
180e0d5fba2e
join: remove uses of repo.join/wjoin
Durham Goode <durham@fb.com>
parents:
1204
diff
changeset
|
134 test_util.rmtree(self.repo.vfs.join('svn')) |
754
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
135 self.assertRaises(hgutil.Abort, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
136 self.repo.svnmeta) |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
137 self.assertRaises(hgutil.Abort, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
138 svncommands.info, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
139 self.ui(), repo=self.repo, args=[]) |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
140 self.assertRaises(hgutil.Abort, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
141 svncommands.genignore, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
142 self.ui(), repo=self.repo, args=[]) |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
143 |
1503
180e0d5fba2e
join: remove uses of repo.join/wjoin
Durham Goode <durham@fb.com>
parents:
1204
diff
changeset
|
144 os.remove(self.repo.vfs.join('hgrc')) |
754
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
145 self.assertRaises(hgutil.Abort, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
146 self.repo.svnmeta) |
746
174f03c288d4
svnmeta: abort when no UUID given and none is stored on disk.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
743
diff
changeset
|
147 self.assertRaises(hgutil.Abort, |
754
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
148 svncommands.info, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
149 self.ui(), repo=self.repo, args=[]) |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
150 self.assertRaises(hgutil.Abort, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
151 svncommands.genignore, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
152 self.ui(), repo=self.repo, args=[]) |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
153 |
746
174f03c288d4
svnmeta: abort when no UUID given and none is stored on disk.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
743
diff
changeset
|
154 self.assertRaises(hgutil.Abort, |
754
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
155 svncommands.rebuildmeta, |
caa527346a0f
svncommands: abort on missing metadata or Subversion URL (fixes #226)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
746
diff
changeset
|
156 self.ui(), repo=self.repo, args=[]) |
746
174f03c288d4
svnmeta: abort when no UUID given and none is stored on disk.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
743
diff
changeset
|
157 |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
158 def test_parent_output(self): |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
159 self._load_fixture_and_fetch('two_heads.svndump') |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
160 u = self.ui() |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
161 u.pushbuffer() |
832
e9af7eba88db
globally: clean up whitespace around operators and commas to conform with PEP8
Yonggang Luo <luoyonggang@gmail.com>
parents:
754
diff
changeset
|
162 parents = (self.repo['the_branch'].node(), revlog.nullid,) |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
163 def filectxfn(repo, memctx, path): |
1204
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
164 return compathacks.makememfilectx(repo, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
165 path=path, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
166 data='added', |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
167 islink=False, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
168 isexec=False, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
169 copied=False) |
1539
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
170 lr = self.repo |
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
171 ctx = context.memctx(lr, |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
172 parents, |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
173 'automated test', |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
174 ['added_bogus_file', 'other_added_file', ], |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
175 filectxfn, |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
176 'testy', |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
177 '2008-12-21 16:32:00 -0500', |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
178 {'branch': 'localbranch', }) |
1539
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
179 new = lr.commitctx(ctx) |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
180 hg.update(self.repo, new) |
403
37c96b78b8c0
uisetup: use a single loop/abstraction for wrapping all the commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
347
diff
changeset
|
181 wrappers.parents(lambda x, y: None, u, self.repo, svn=True) |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
182 actual = u.popbuffer() |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
183 self.assertEqual(actual, '3:4e256962fc5d\n') |
256
7932d098cb5f
Refactor commands to wrap their hg equivalent adding a --svn flag where sane.
Augie Fackler <durin42@gmail.com>
parents:
253
diff
changeset
|
184 |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
185 hg.update(self.repo, 'default') |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
186 |
256
7932d098cb5f
Refactor commands to wrap their hg equivalent adding a --svn flag where sane.
Augie Fackler <durin42@gmail.com>
parents:
253
diff
changeset
|
187 # Make sure styles work |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
188 u.pushbuffer() |
403
37c96b78b8c0
uisetup: use a single loop/abstraction for wrapping all the commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
347
diff
changeset
|
189 wrappers.parents(lambda x, y: None, u, self.repo, svn=True, style='compact') |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
190 actual = u.popbuffer() |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
191 self.assertEqual(actual, '4:1083037b18d8\n') |
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
192 |
256
7932d098cb5f
Refactor commands to wrap their hg equivalent adding a --svn flag where sane.
Augie Fackler <durin42@gmail.com>
parents:
253
diff
changeset
|
193 # custom templates too |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
194 u.pushbuffer() |
403
37c96b78b8c0
uisetup: use a single loop/abstraction for wrapping all the commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
347
diff
changeset
|
195 wrappers.parents(lambda x, y: None, u, self.repo, svn=True, template='{node}\n') |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
196 actual = u.popbuffer() |
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
197 self.assertEqual(actual, '1083037b18d85cd84fa211c5adbaeff0fea2cd9f\n') |
256
7932d098cb5f
Refactor commands to wrap their hg equivalent adding a --svn flag where sane.
Augie Fackler <durin42@gmail.com>
parents:
253
diff
changeset
|
198 |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
199 u.pushbuffer() |
403
37c96b78b8c0
uisetup: use a single loop/abstraction for wrapping all the commands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
347
diff
changeset
|
200 wrappers.parents(lambda x, y: None, u, self.repo, svn=True) |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
201 actual = u.popbuffer() |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
202 self.assertEqual(actual, '4:1083037b18d8\n') |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
203 |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
204 def test_outgoing_output(self): |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
205 repo, repo_path = self.load_and_fetch('two_heads.svndump') |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
206 u = self.ui() |
832
e9af7eba88db
globally: clean up whitespace around operators and commas to conform with PEP8
Yonggang Luo <luoyonggang@gmail.com>
parents:
754
diff
changeset
|
207 parents = (self.repo['the_branch'].node(), revlog.nullid,) |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
208 def filectxfn(repo, memctx, path): |
1204
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
209 return compathacks.makememfilectx(repo, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
210 path=path, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
211 data='added', |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
212 islink=False, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
213 isexec=False, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
214 copied=False) |
1539
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
215 lr = self.repo |
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
216 ctx = context.memctx(lr, |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
217 parents, |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
218 'automated test', |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
219 ['added_bogus_file', 'other_added_file', ], |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
220 filectxfn, |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
221 'testy', |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
222 '2008-12-21 16:32:00 -0500', |
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
223 {'branch': 'localbranch', }) |
1539
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
224 new = lr.commitctx(ctx) |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
225 hg.update(self.repo, new) |
347
537de0300510
Remove the 'outgoing' wrapper, and use the Mercurial infrastructure instead.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
337
diff
changeset
|
226 u.pushbuffer() |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
227 commands.outgoing(u, self.repo, repourl(repo_path)) |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
228 actual = u.popbuffer() |
347
537de0300510
Remove the 'outgoing' wrapper, and use the Mercurial infrastructure instead.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
337
diff
changeset
|
229 self.assertTrue(node.hex(self.repo['localbranch'].node())[:8] in actual) |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
230 self.assertEqual(actual.strip(), '5:6de15430fa20') |
157
91541523ea5c
utility_commands: Test outgoing and fix it to work again.
Augie Fackler <durin42@gmail.com>
parents:
153
diff
changeset
|
231 hg.update(self.repo, 'default') |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
232 u.pushbuffer() |
867
50c13e01c7e3
test_util: add a load_and_fetch() returning the repo_path
Patrick Mezard <patrick@mezard.eu>
parents:
866
diff
changeset
|
233 commands.outgoing(u, self.repo, repourl(repo_path)) |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
234 actual = u.popbuffer() |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
235 self.assertEqual(actual, '') |
140
9ffde8662967
util: Add a command to normalize svn urls and use it in a couple of places. Test that it works and prevents failed assertions.
Augie Fackler <durin42@gmail.com>
parents:
139
diff
changeset
|
236 |
149
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
237 def test_rebase(self): |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
238 self._load_fixture_and_fetch('two_revs.svndump') |
832
e9af7eba88db
globally: clean up whitespace around operators and commas to conform with PEP8
Yonggang Luo <luoyonggang@gmail.com>
parents:
754
diff
changeset
|
239 parents = (self.repo[0].node(), revlog.nullid,) |
149
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
240 def filectxfn(repo, memctx, path): |
1204
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
241 return compathacks.makememfilectx(repo, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
242 path=path, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
243 data='added', |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
244 islink=False, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
245 isexec=False, |
e73df57b2b07
test_utility_commands: call makememfilectx
Sean Farley <sean.michael.farley@gmail.com>
parents:
1092
diff
changeset
|
246 copied=False) |
1539
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
247 lr = self.repo |
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
248 ctx = context.memctx(lr, |
149
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
249 parents, |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
250 'automated test', |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
251 ['added_bogus_file', 'other_added_file', ], |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
252 filectxfn, |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
253 'testy', |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
254 '2008-12-21 16:32:00 -0500', |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
255 {'branch': 'localbranch', }) |
1539
0ebcc5bbf692
tests: when making a `memctx`, make sure to use a single repo instance
Augie Fackler <raf@durin42.com>
parents:
1503
diff
changeset
|
256 lr.commitctx(ctx) |
149
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
257 self.assertEqual(self.repo['tip'].branch(), 'localbranch') |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
258 beforerebasehash = self.repo['tip'].node() |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
259 hg.update(self.repo, 'tip') |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
260 wrappers.rebase(rebase.rebase, self.ui(), self.repo, svn=True) |
149
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
261 self.assertEqual(self.repo['tip'].branch(), 'localbranch') |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
262 self.assertEqual(self.repo['tip'].parents()[0].parents()[0], self.repo[0]) |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
263 self.assertNotEqual(beforerebasehash, self.repo['tip'].node()) |
04800fda7af5
rebase: preserve local branch names.
Augie Fackler <durin42@gmail.com>
parents:
140
diff
changeset
|
264 |
1092
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
265 def test_genignore(self, layout='auto'): |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
266 """ Test generation of .hgignore file. """ |
1092
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
267 if layout == 'custom': |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
268 config = { |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
269 'hgsubversionbranch.default': 'trunk', |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
270 } |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
271 else: |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
272 config = {} |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
273 repo = self._load_fixture_and_fetch('ignores.svndump', |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
274 layout=layout, |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
275 noupdate=False, |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
276 config=config) |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
277 u = self.ui() |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
278 u.pushbuffer() |
865
04729f3a3d17
test_util: merge load_fixture_and_fetch() into TestBase method
Patrick Mezard <patrick@mezard.eu>
parents:
833
diff
changeset
|
279 svncommands.genignore(u, repo, self.wc_path) |
743
045120d3a110
test_utility_commands: use self.assertMultiLineEqual().
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
280 self.assertMultiLineEqual(open(os.path.join(self.wc_path, '.hgignore')).read(), |
199
91db8fc049b0
Add a genignore utility command that generates an hgignore file by scraping svn:ignore properties.
Augie Fackler <durin42@gmail.com>
parents:
195
diff
changeset
|
281 '.hgignore\nsyntax:glob\nblah\notherblah\nbaz/magic\n') |
91db8fc049b0
Add a genignore utility command that generates an hgignore file by scraping svn:ignore properties.
Augie Fackler <durin42@gmail.com>
parents:
195
diff
changeset
|
282 |
550
f0159775e0f1
utility_commands: fix hg svn genignore for single-directory mode
Augie Fackler <durin42@gmail.com>
parents:
549
diff
changeset
|
283 def test_genignore_single(self): |
1092
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
284 self.test_genignore(layout='single') |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
285 |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
286 def test_genignore_custom(self): |
cd0d14e25757
layouts: add custom layout for those of us that need weird mappings
David Schleimer <dschleimer@fb.com>
parents:
1077
diff
changeset
|
287 self.test_genignore(layout='custom') |
550
f0159775e0f1
utility_commands: fix hg svn genignore for single-directory mode
Augie Fackler <durin42@gmail.com>
parents:
549
diff
changeset
|
288 |
236
c34abd2448b7
Issue #60: Add a svn sub-command to list all authors in a Subversion repository
Daniel Tang <dytang@cs.purdue.edu>
parents:
230
diff
changeset
|
289 def test_list_authors(self): |
866
20e73b5ab6f7
test_util: merge load_svndump_fixture() into TestBase
Patrick Mezard <patrick@mezard.eu>
parents:
865
diff
changeset
|
290 repo_path = self.load_svndump('replace_trunk_with_branch.svndump') |
576
d96aa92d9ad9
tests: silence test suite by using quiet UIs everywhere
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
573
diff
changeset
|
291 u = self.ui() |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
292 u.pushbuffer() |
578
de384e4e0423
merge commands from utility_commands into svncommands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
576
diff
changeset
|
293 svncommands.listauthors(u, |
866
20e73b5ab6f7
test_util: merge load_svndump_fixture() into TestBase
Patrick Mezard <patrick@mezard.eu>
parents:
865
diff
changeset
|
294 args=[test_util.fileurl(repo_path)], |
253
c3d5c4ae9c7c
Work with simple command table instead of decorators.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
241
diff
changeset
|
295 authors=None) |
331
75f082b5897e
Switch to using url scheme wrappers instead of duplicating each command we wrap.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
264
diff
changeset
|
296 actual = u.popbuffer() |
743
045120d3a110
test_utility_commands: use self.assertMultiLineEqual().
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
297 self.assertMultiLineEqual(actual, 'Augie\nevil\n') |
236
c34abd2448b7
Issue #60: Add a svn sub-command to list all authors in a Subversion repository
Daniel Tang <dytang@cs.purdue.edu>
parents:
230
diff
changeset
|
298 |
c34abd2448b7
Issue #60: Add a svn sub-command to list all authors in a Subversion repository
Daniel Tang <dytang@cs.purdue.edu>
parents:
230
diff
changeset
|
299 def test_list_authors_map(self): |
866
20e73b5ab6f7
test_util: merge load_svndump_fixture() into TestBase
Patrick Mezard <patrick@mezard.eu>
parents:
865
diff
changeset
|
300 repo_path = self.load_svndump('replace_trunk_with_branch.svndump') |
20e73b5ab6f7
test_util: merge load_svndump_fixture() into TestBase
Patrick Mezard <patrick@mezard.eu>
parents:
865
diff
changeset
|
301 author_path = os.path.join(repo_path, 'authors') |
578
de384e4e0423
merge commands from utility_commands into svncommands
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
576
diff
changeset
|
302 svncommands.listauthors(self.ui(), |
866
20e73b5ab6f7
test_util: merge load_svndump_fixture() into TestBase
Patrick Mezard <patrick@mezard.eu>
parents:
865
diff
changeset
|
303 args=[test_util.fileurl(repo_path)], |
20e73b5ab6f7
test_util: merge load_svndump_fixture() into TestBase
Patrick Mezard <patrick@mezard.eu>
parents:
865
diff
changeset
|
304 authors=author_path) |
743
045120d3a110
test_utility_commands: use self.assertMultiLineEqual().
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
305 self.assertMultiLineEqual(open(author_path).read(), 'Augie=\nevil=\n') |
256
7932d098cb5f
Refactor commands to wrap their hg equivalent adding a --svn flag where sane.
Augie Fackler <durin42@gmail.com>
parents:
253
diff
changeset
|
306 |
1077
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
307 def test_svnverify(self): |
880
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
308 repo, repo_path = self.load_and_fetch('binaryfiles.svndump', |
1077
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
309 noupdate=False) |
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
310 ret = verify.verify(self.ui(), repo, [], rev=1) |
880
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
311 self.assertEqual(0, ret) |
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
312 repo_path = self.load_svndump('binaryfiles-broken.svndump') |
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
313 u = self.ui() |
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
314 u.pushbuffer() |
899
7f90bb48c9de
svn verify: use a custom editor and get_revision()
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
897
diff
changeset
|
315 ret = verify.verify(u, repo, [test_util.fileurl(repo_path)], |
1077
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
316 rev=1) |
880
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
317 output = u.popbuffer() |
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
318 self.assertEqual(1, ret) |
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
319 output = re.sub(r'file://\S+', 'file://', output) |
887
f95c429124f3
make assertion failures slightly prettier and more readable
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
881
diff
changeset
|
320 self.assertMultiLineEqual("""\ |
880
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
321 verifying d51f46a715a1 against file:// |
892
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
322 difference in: binary2 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
323 unexpected file: binary1 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
324 missing file: binary3 |
880
d4312a6f7a87
test_utility_commands: test verify command
Patrick Mezard <patrick@mezard.eu>
parents:
867
diff
changeset
|
325 """, output) |
153
46f6b872c988
tests: Fix some missing suite definitions so that running the full testsuite
Augie Fackler <durin42@gmail.com>
parents:
149
diff
changeset
|
326 |
1077
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
327 def test_corruption(self): |
892
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
328 SUCCESS = 0 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
329 FAILURE = 1 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
330 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
331 repo, repo_path = self.load_and_fetch('correct.svndump', layout='single', |
1077
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
332 subdir='') |
892
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
333 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
334 ui = self.ui() |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
335 |
1077
8f3a241b790d
test_utility_commands: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1044
diff
changeset
|
336 self.assertEqual(SUCCESS, verify.verify(ui, self.repo, rev='tip')) |
892
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
337 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
338 corrupt_source = test_util.fileurl(self.load_svndump('corrupt.svndump')) |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
339 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
340 repo.ui.setconfig('paths', 'default', corrupt_source) |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
341 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
342 ui.pushbuffer() |
897
6bc8046e3d0a
move verify to a file of its own
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
892
diff
changeset
|
343 code = verify.verify(ui, repo, rev='tip') |
892
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
344 actual = ui.popbuffer() |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
345 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
346 actual = actual.replace(corrupt_source, '$REPO') |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
347 actual = set(actual.splitlines()) |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
348 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
349 expected = set([ |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
350 'verifying 78e965230a13 against $REPO@1', |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
351 'missing file: missing-file', |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
352 'wrong flags for: executable-file', |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
353 'wrong flags for: symlink', |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
354 'wrong flags for: regular-file', |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
355 'difference in: another-regular-file', |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
356 'difference in: regular-file', |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
357 'unexpected file: empty-file', |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
358 ]) |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
359 |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
360 self.assertEqual((FAILURE, expected), (code, actual)) |
3bfb7e985c47
svn verify: add a test for corrupt repositories.
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
887
diff
changeset
|
361 |
918
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
362 def test_svnrebuildmeta(self): |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
363 otherpath = self.load_svndump('binaryfiles-broken.svndump') |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
364 otherurl = test_util.fileurl(otherpath) |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
365 self.load_and_fetch('replace_trunk_with_branch.svndump') |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
366 # rebuildmeta with original repo |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
367 svncommands.rebuildmeta(self.ui(), repo=self.repo, args=[]) |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
368 # rebuildmeta with unrelated repo |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
369 self.assertRaises(hgutil.Abort, |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
370 svncommands.rebuildmeta, |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
371 self.ui(), repo=self.repo, args=[otherurl]) |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
372 # rebuildmeta --unsafe-skip-uuid-check with unrelated repo |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
373 svncommands.rebuildmeta(self.ui(), repo=self.repo, args=[otherurl], |
761a87134501
rebuildmeta: accept unrelated svn repo with --unsafe-skip-uuid-check
Patrick Mezard <patrick@mezard.eu>
parents:
899
diff
changeset
|
374 unsafe_skip_uuid_check=True) |