Mercurial > hgsubversion
annotate tests/test_fetch_command.py @ 1588:e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
46da52f4b820 in core mercurial added logic to try hard to reuse manifest if we
can. In the tests of hgsubversion, there are lot of cases we create an empty
commit with just branch name changed. In hg < 4.8, hgsubversion used to create a
new manifest entry for that commit but after that patch, empty commit started
using the manifest of the parent leading to hash change.
author | Pulkit Goyal <pulkit@yandex-team.ru> |
---|---|
date | Wed, 31 Oct 2018 17:04:57 +0300 |
parents | 68965b2e3401 |
children |
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:
569
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:
569
diff
changeset
|
2 |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
3 import os |
14
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
4 import unittest |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
5 import urllib |
14
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
6 |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
7 from mercurial import commands |
14
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
8 from mercurial import hg |
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
9 from mercurial import node |
195 | 10 from mercurial import ui |
924
e252f9355933
test_fetch_command: fix if local encoding is not UTF-8
Patrick Mezard <patrick@mezard.eu>
parents:
910
diff
changeset
|
11 from mercurial import encoding |
14
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
12 |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
13 revsymbol = test_util.revsymbol |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
14 |
91
7d10165cf3d9
tests: Mock the mercurial.ui.ui class like we really should to capture output.
Augie Fackler <durin42@gmail.com>
parents:
78
diff
changeset
|
15 class TestBasicRepoLayout(test_util.TestBase): |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
16 stupid_mode_tests = True |
237
c90cfa665b81
Cope with date-less revisions.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
218
diff
changeset
|
17 |
c90cfa665b81
Cope with date-less revisions.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
218
diff
changeset
|
18 def test_no_dates(self): |
c90cfa665b81
Cope with date-less revisions.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
218
diff
changeset
|
19 repo = self._load_fixture_and_fetch('test_no_dates.svndump') |
245
f8e9b74df403
Fix test_no_dates to not be TZ-sensitive.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
237
diff
changeset
|
20 local_epoch = repo[0].date() |
f8e9b74df403
Fix test_no_dates to not be TZ-sensitive.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
237
diff
changeset
|
21 self.assertEqual(local_epoch[0], local_epoch[1]) |
237
c90cfa665b81
Cope with date-less revisions.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
218
diff
changeset
|
22 self.assertEqual(repo[1].date(), repo[2].date()) |
c90cfa665b81
Cope with date-less revisions.
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
218
diff
changeset
|
23 |
14
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
24 def test_fresh_fetch_single_rev(self): |
22
95d0109e495e
Refactor tests so I can reuse code more.
Augie Fackler <durin42@gmail.com>
parents:
21
diff
changeset
|
25 repo = self._load_fixture_and_fetch('single_rev.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
26 self.assertEqual(node.hex(revsymbol(repo, 'tip').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
27 '434ed487136c1b47c1e8f952edb4dc5a8e6328df') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
28 self.assertEqual(revsymbol(repo, 'tip').extra()['convert_revision'], |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
29 'svn:df2126f7-00ab-4d49-b42c-7e981dde0bcf/trunk@2') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
30 self.assertEqual(revsymbol(repo, 'tip'), repo[0]) |
14
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
31 |
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
32 def test_fresh_fetch_two_revs(self): |
22
95d0109e495e
Refactor tests so I can reuse code more.
Augie Fackler <durin42@gmail.com>
parents:
21
diff
changeset
|
33 repo = self._load_fixture_and_fetch('two_revs.svndump') |
14
d78dbf88c13d
Started a meaningful test suite.
Augie Fackler <durin42@gmail.com>
parents:
diff
changeset
|
34 self.assertEqual(node.hex(repo[0].node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
35 '434ed487136c1b47c1e8f952edb4dc5a8e6328df') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
36 self.assertEqual(node.hex(revsymbol(repo, 'tip').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
37 'c95251e0dd04697deee99b79cc407d7db76e6a5f') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
38 self.assertEqual(revsymbol(repo, 'tip'), repo[1]) |
15
db32dee803a8
Add some basic tests of branching.
Augie Fackler <durin42@gmail.com>
parents:
14
diff
changeset
|
39 |
db32dee803a8
Add some basic tests of branching.
Augie Fackler <durin42@gmail.com>
parents:
14
diff
changeset
|
40 def test_branches(self): |
22
95d0109e495e
Refactor tests so I can reuse code more.
Augie Fackler <durin42@gmail.com>
parents:
21
diff
changeset
|
41 repo = self._load_fixture_and_fetch('simple_branch.svndump') |
15
db32dee803a8
Add some basic tests of branching.
Augie Fackler <durin42@gmail.com>
parents:
14
diff
changeset
|
42 self.assertEqual(node.hex(repo[0].node()), |
542
bb00f7ca5b8c
Rewrite simple_branch.sh fixture from svn dump
Patrick Mezard <pmezard@gmail.com>
parents:
263
diff
changeset
|
43 'a1ff9f5d90852ce7f8e607fa144066b0a06bdc57') |
1588
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
44 self.assertTrue(node.hex(revsymbol(repo, 'tip').node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
45 ('545e36ed13615e39c5c8fb0c325109d8cb8e00c3', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
46 '04043a3f29a7070b1ea56d6ef832591956a41381')) |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
47 self.assertEqual(len(revsymbol(repo, 'tip').parents()), 1) |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
48 self.assertEqual(revsymbol(repo, 'tip').parents()[0], revsymbol(repo, 'default')) |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
49 self.assertEqual(revsymbol(repo, 'tip').extra()['convert_revision'], |
542
bb00f7ca5b8c
Rewrite simple_branch.sh fixture from svn dump
Patrick Mezard <pmezard@gmail.com>
parents:
263
diff
changeset
|
50 'svn:3cd547df-371e-4add-bccf-aba732a2baf5/branches/the_branch@4') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
51 self.assertEqual(revsymbol(repo, 'default').extra()['convert_revision'], |
542
bb00f7ca5b8c
Rewrite simple_branch.sh fixture from svn dump
Patrick Mezard <pmezard@gmail.com>
parents:
263
diff
changeset
|
52 'svn:3cd547df-371e-4add-bccf-aba732a2baf5/trunk@3') |
15
db32dee803a8
Add some basic tests of branching.
Augie Fackler <durin42@gmail.com>
parents:
14
diff
changeset
|
53 self.assertEqual(len(repo.heads()), 1) |
db32dee803a8
Add some basic tests of branching.
Augie Fackler <durin42@gmail.com>
parents:
14
diff
changeset
|
54 |
db32dee803a8
Add some basic tests of branching.
Augie Fackler <durin42@gmail.com>
parents:
14
diff
changeset
|
55 def test_two_branches_with_heads(self): |
22
95d0109e495e
Refactor tests so I can reuse code more.
Augie Fackler <durin42@gmail.com>
parents:
21
diff
changeset
|
56 repo = self._load_fixture_and_fetch('two_heads.svndump') |
15
db32dee803a8
Add some basic tests of branching.
Augie Fackler <durin42@gmail.com>
parents:
14
diff
changeset
|
57 self.assertEqual(node.hex(repo[0].node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
58 '434ed487136c1b47c1e8f952edb4dc5a8e6328df') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
59 self.assertEqual(node.hex(revsymbol(repo, 'tip').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
60 '1083037b18d85cd84fa211c5adbaeff0fea2cd9f') |
1588
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
61 # two hashes to be compat with hg < 4.8 because from 4.8 we try hard to |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
62 # reuse the manifest |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
63 self.assertTrue(node.hex(revsymbol(repo, 'the_branch').node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
64 ('4e256962fc5df545e2e0a51d0d1dc61c469127e6', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
65 '13c5dc1514ad8619c589a8929bfe0ece5c00f18e')) |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
66 self.assertTrue(node.hex(revsymbol(repo, 'the_branch').parents()[0].node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
67 ('f1ff5b860f5dbb9a59ad0921a79da77f10f25109', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
68 '62f4e5fb583a405df3dae62c156461a0f44219f2')) |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
69 self.assertEqual(len(revsymbol(repo, 'tip').parents()), 1) |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
70 self.assertEqual(revsymbol(repo, 'tip'), revsymbol(repo, 'default')) |
15
db32dee803a8
Add some basic tests of branching.
Augie Fackler <durin42@gmail.com>
parents:
14
diff
changeset
|
71 self.assertEqual(len(repo.heads()), 2) |
16
48a44546c12f
Add a basic system for running the hgsubversion tests (although not the svnwrap ones) without requiring Nose. Nose is still the recommended way to run the tests.
Augie Fackler <durin42@gmail.com>
parents:
15
diff
changeset
|
72 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
73 def test_many_special_cases(self): |
22
95d0109e495e
Refactor tests so I can reuse code more.
Augie Fackler <durin42@gmail.com>
parents:
21
diff
changeset
|
74 repo = self._load_fixture_and_fetch('many_special_cases.svndump') |
21
8626f3d2e50b
Add a small stack of tests that exercise some of the interesting special cases.
Augie Fackler <durin42@gmail.com>
parents:
18
diff
changeset
|
75 |
569
95eca255739e
test_fetch_command: handle changes in revision extra ordering gracefully
Augie Fackler <durin42@gmail.com>
parents:
542
diff
changeset
|
76 self.assertEquals(node.hex(repo[0].node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
77 '434ed487136c1b47c1e8f952edb4dc5a8e6328df') |
569
95eca255739e
test_fetch_command: handle changes in revision extra ordering gracefully
Augie Fackler <durin42@gmail.com>
parents:
542
diff
changeset
|
78 # two possible hashes for bw compat to hg < 1.5, since hg 1.5 |
95eca255739e
test_fetch_command: handle changes in revision extra ordering gracefully
Augie Fackler <durin42@gmail.com>
parents:
542
diff
changeset
|
79 # sorts entries in extra() |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
80 self.assertTrue(node.hex(revsymbol(repo, 'tip').node()) in |
1588
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
81 ('e92012d8c170a0236c84166167f149c2e28548c6', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
82 'b7bdc73041b1852563deb1ef3f4153c2fe4484f2')) |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
83 # two possible hashes for backward compatibility with hg < 4.8 |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
84 self.assertTrue(node.hex(revsymbol(repo, 'the_branch').node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
85 ('4e256962fc5df545e2e0a51d0d1dc61c469127e6', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
86 '13c5dc1514ad8619c589a8929bfe0ece5c00f18e')) |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
87 self.assertTrue(node.hex(revsymbol(repo, 'the_branch').parents()[0].node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
88 ('f1ff5b860f5dbb9a59ad0921a79da77f10f25109', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
89 '62f4e5fb583a405df3dae62c156461a0f44219f2')) |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
90 self.assertEqual(len(revsymbol(repo, 'tip').parents()), 1) |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
91 self.assertEqual(revsymbol(repo, 'tip'), revsymbol(repo, 'default')) |
21
8626f3d2e50b
Add a small stack of tests that exercise some of the interesting special cases.
Augie Fackler <durin42@gmail.com>
parents:
18
diff
changeset
|
92 self.assertEqual(len(repo.heads()), 2) |
8626f3d2e50b
Add a small stack of tests that exercise some of the interesting special cases.
Augie Fackler <durin42@gmail.com>
parents:
18
diff
changeset
|
93 |
40
9952f03ddfbe
Add a test that proves files in the branches directory don't cause breakage.
Augie Fackler <durin42@gmail.com>
parents:
25
diff
changeset
|
94 def test_file_mixed_with_branches(self): |
9952f03ddfbe
Add a test that proves files in the branches directory don't cause breakage.
Augie Fackler <durin42@gmail.com>
parents:
25
diff
changeset
|
95 repo = self._load_fixture_and_fetch('file_mixed_with_branches.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
96 self.assertEqual(node.hex(revsymbol(repo, 'default').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
97 '434ed487136c1b47c1e8f952edb4dc5a8e6328df') |
1578
68965b2e3401
tests: use repo['.'] instead of repo to check whether file exists
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1570
diff
changeset
|
98 assert 'README' not in repo['.'] |
68965b2e3401
tests: use repo['.'] instead of repo to check whether file exists
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1570
diff
changeset
|
99 assert '../branches' not in repo['.'] |
40
9952f03ddfbe
Add a test that proves files in the branches directory don't cause breakage.
Augie Fackler <durin42@gmail.com>
parents:
25
diff
changeset
|
100 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
101 def test_files_copied_from_outside_btt(self): |
41
496c0354019c
Improved handling of copies from outside of trunk.
Augie Fackler <durin42@gmail.com>
parents:
40
diff
changeset
|
102 repo = self._load_fixture_and_fetch( |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
103 'test_files_copied_from_outside_btt.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
104 self.assertEqual(node.hex(revsymbol(repo, 'tip').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
105 '3c78170e30ddd35f2c32faa0d8646ab75bba4f73') |
1463
86ae03f889a4
test_util: allow counting converted revisions
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1084
diff
changeset
|
106 self.assertEqual(test_util.repolen(repo), 2) |
21
8626f3d2e50b
Add a small stack of tests that exercise some of the interesting special cases.
Augie Fackler <durin42@gmail.com>
parents:
18
diff
changeset
|
107 |
43
af7ac6c03452
Fix a bug with added files from outside branches/trunk/tags.
Augie Fackler <durin42@gmail.com>
parents:
41
diff
changeset
|
108 def test_file_renamed_in_from_outside_btt(self): |
af7ac6c03452
Fix a bug with added files from outside branches/trunk/tags.
Augie Fackler <durin42@gmail.com>
parents:
41
diff
changeset
|
109 repo = self._load_fixture_and_fetch( |
af7ac6c03452
Fix a bug with added files from outside branches/trunk/tags.
Augie Fackler <durin42@gmail.com>
parents:
41
diff
changeset
|
110 'file_renamed_in_from_outside_btt.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
111 self.assert_('LICENSE.file' in revsymbol(repo, 'default')) |
43
af7ac6c03452
Fix a bug with added files from outside branches/trunk/tags.
Augie Fackler <durin42@gmail.com>
parents:
41
diff
changeset
|
112 |
112
e58c2f1de059
Fix a regression in converting repositories with files copied in from outside
Augie Fackler <durin42@gmail.com>
parents:
111
diff
changeset
|
113 def test_renamed_dir_in_from_outside_btt_not_repo_root(self): |
e58c2f1de059
Fix a regression in converting repositories with files copied in from outside
Augie Fackler <durin42@gmail.com>
parents:
111
diff
changeset
|
114 repo = self._load_fixture_and_fetch( |
e58c2f1de059
Fix a regression in converting repositories with files copied in from outside
Augie Fackler <durin42@gmail.com>
parents:
111
diff
changeset
|
115 'fetch_missing_files_subdir.svndump', subdir='foo') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
116 self.assertEqual(node.hex(revsymbol(repo, 'tip').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
117 '269dcdd4361b2847e9f4288d4500e55d35df1f52') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
118 self.assert_('bar/alpha' in revsymbol(repo, 'tip')) |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
119 self.assert_('foo' in revsymbol(repo, 'tip')) |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
120 self.assert_('bar/alpha' not in revsymbol(repo, 'tip').parents()[0]) |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
121 self.assert_('foo' in revsymbol(repo, 'tip').parents()[0]) |
112
e58c2f1de059
Fix a regression in converting repositories with files copied in from outside
Augie Fackler <durin42@gmail.com>
parents:
111
diff
changeset
|
122 |
59
430af23bef4a
Performance fix for branches-from-tags in real replay, which is tied up with
Augie Fackler <durin42@gmail.com>
parents:
43
diff
changeset
|
123 def test_oldest_not_trunk_and_tag_vendor_branch(self): |
430af23bef4a
Performance fix for branches-from-tags in real replay, which is tied up with
Augie Fackler <durin42@gmail.com>
parents:
43
diff
changeset
|
124 repo = self._load_fixture_and_fetch( |
430af23bef4a
Performance fix for branches-from-tags in real replay, which is tied up with
Augie Fackler <durin42@gmail.com>
parents:
43
diff
changeset
|
125 'tagged_vendor_and_oldest_not_trunk.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
126 self.assertEqual(node.hex(revsymbol(repo, 'oldest').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
127 '926671740dec045077ab20f110c1595f935334fa') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
128 self.assertEqual(revsymbol(repo, 'tip').parents()[0].parents()[0], |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
129 revsymbol(repo, 'oldest')) |
1588
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
130 # two hashes for backward compatibility with hg < 4.8 because from 4.8, |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
131 # we try hard to reuse the manifest |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
132 self.assertTrue(node.hex(revsymbol(repo, 'tip').node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
133 ('1a6c3f30911d57abb67c257ec0df3e7bc44786f7', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
134 'fa799f2781255dba874645e849d75af837472518')) |
111
5497d1264b4d
fetch_command: Fix mis-converted executable when svn:executable was set to the
Augie Fackler <durin42@gmail.com>
parents:
101
diff
changeset
|
135 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
136 def test_propedit_with_nothing_else(self): |
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
137 repo = self._load_fixture_and_fetch('branch_prop_edit.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
138 self.assertEqual(revsymbol(repo, 'tip').description(), 'Commit bogus propchange.') |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
139 self.assertEqual(revsymbol(repo, 'tip').branch(), 'dev_branch') |
136
cf6fe8457570
Fix an apparent regression where branch name didn't get properly stored for
Augie Fackler <durin42@gmail.com>
parents:
135
diff
changeset
|
140 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
141 def test_entry_deletion(self): |
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
142 repo = self._load_fixture_and_fetch('delentries.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
143 files = list(sorted(revsymbol(repo, 'tip').manifest())) |
144
19aabf67c792
test_fetch_command: test file and directory deletions
Patrick Mezard <pmezard@gmail.com>
parents:
138
diff
changeset
|
144 self.assertEqual(['aa', 'd1/c', 'd1/d2prefix'], files) |
19aabf67c792
test_fetch_command: test file and directory deletions
Patrick Mezard <pmezard@gmail.com>
parents:
138
diff
changeset
|
145 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
146 def test_fetch_when_trunk_has_no_files(self): |
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
147 repo = self._load_fixture_and_fetch('file_not_in_trunk_root.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
148 self.assertEqual(revsymbol(repo, 'tip').branch(), 'default') |
207
b20a6c149021
fetch: Fix a bogus case where no files in the root level of trunk caused breakage in the branch detection.
Augie Fackler <durin42@gmail.com>
parents:
203
diff
changeset
|
149 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
150 def test_path_quoting(self): |
866
20e73b5ab6f7
test_util: merge load_svndump_fixture() into TestBase
Patrick Mezard <patrick@mezard.eu>
parents:
865
diff
changeset
|
151 repo_path = self.load_svndump('non_ascii_path_1.svndump') |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
152 subdir = '/b\xC3\xB8b' |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
153 quoted_subdir = urllib.quote(subdir) |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
154 |
866
20e73b5ab6f7
test_util: merge load_svndump_fixture() into TestBase
Patrick Mezard <patrick@mezard.eu>
parents:
865
diff
changeset
|
155 repo_url = test_util.fileurl(repo_path) |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
156 wc_path = self.wc_path |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
157 wc2_path = wc_path + '-2' |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
158 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
159 ui = self.ui() |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
160 |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
161 commands.clone(ui, repo_url + subdir, wc_path) |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
162 commands.clone(ui, repo_url + quoted_subdir, wc2_path) |
832
e9af7eba88db
globally: clean up whitespace around operators and commas to conform with PEP8
Yonggang Luo <luoyonggang@gmail.com>
parents:
717
diff
changeset
|
163 repo = hg.repository(ui, wc_path) |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
164 repo2 = hg.repository(ui, wc2_path) |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
165 |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
166 self.assertEqual(revsymbol(repo, 'tip').extra()['convert_revision'], |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
167 repo2['tip'].extra()['convert_revision']) |
1048
903c9c9dfe6a
tests: count revisions explicitly
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1045
diff
changeset
|
168 self.assertEqual(test_util.repolen(repo), test_util.repolen(repo2)) |
717
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
169 |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
170 for r in repo: |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
171 self.assertEqual(repo[r].hex(), repo2[r].hex()) |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
172 |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
173 def test_identical_fixtures(self): |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
174 '''ensure that the non_ascii_path_N fixtures are identical''' |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
175 fixturepaths = [ |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
176 os.path.join(test_util.FIXTURES, 'non_ascii_path_1.svndump'), |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
177 os.path.join(test_util.FIXTURES, 'non_ascii_path_2.svndump'), |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
178 ] |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
179 self.assertMultiLineEqual(open(fixturepaths[0]).read(), |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
180 open(fixturepaths[1]).read()) |
ae5968ffe6fe
svnwrap: fix handling of quotable URLs (fixes #197, refs #132)
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
643
diff
changeset
|
181 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
182 def test_invalid_message(self): |
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
183 repo = self._load_fixture_and_fetch('invalid_utf8.tar.gz') |
924
e252f9355933
test_fetch_command: fix if local encoding is not UTF-8
Patrick Mezard <patrick@mezard.eu>
parents:
910
diff
changeset
|
184 # changelog returns descriptions in local encoding |
e252f9355933
test_fetch_command: fix if local encoding is not UTF-8
Patrick Mezard <patrick@mezard.eu>
parents:
910
diff
changeset
|
185 desc = encoding.fromlocal(repo[0].description()) |
e252f9355933
test_fetch_command: fix if local encoding is not UTF-8
Patrick Mezard <patrick@mezard.eu>
parents:
910
diff
changeset
|
186 self.assertEqual(desc.decode('utf8'), |
910
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
866
diff
changeset
|
187 u'bl\xe5b\xe6rgr\xf8d') |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
866
diff
changeset
|
188 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
866
diff
changeset
|
189 |
91
7d10165cf3d9
tests: Mock the mercurial.ui.ui class like we really should to capture output.
Augie Fackler <durin42@gmail.com>
parents:
78
diff
changeset
|
190 class TestStupidPull(test_util.TestBase): |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
191 stupid_mode_tests = True |
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
192 |
18
f4c751037a4a
Add a quick test for diff-based pull.
Augie Fackler <durin42@gmail.com>
parents:
16
diff
changeset
|
193 def test_stupid(self): |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
194 repo = self._load_fixture_and_fetch('two_heads.svndump') |
18
f4c751037a4a
Add a quick test for diff-based pull.
Augie Fackler <durin42@gmail.com>
parents:
16
diff
changeset
|
195 self.assertEqual(node.hex(repo[0].node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
196 '434ed487136c1b47c1e8f952edb4dc5a8e6328df') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
197 self.assertEqual(node.hex(revsymbol(repo, 'tip').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
198 '1083037b18d85cd84fa211c5adbaeff0fea2cd9f') |
1588
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
199 # two hashes to be compat with hg < 4.8 |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
200 self.assertTrue(node.hex(revsymbol(repo, 'the_branch').node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
201 ('4e256962fc5df545e2e0a51d0d1dc61c469127e6', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
202 '13c5dc1514ad8619c589a8929bfe0ece5c00f18e')) |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
203 self.assertEqual(revsymbol(repo, 'the_branch').extra()['convert_revision'], |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
204 'svn:df2126f7-00ab-4d49-b42c-7e981dde0bcf/branches/the_branch@5') |
1588
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
205 self.assertTrue(node.hex(revsymbol(repo, 'the_branch').parents()[0].node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
206 ('f1ff5b860f5dbb9a59ad0921a79da77f10f25109', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
207 '62f4e5fb583a405df3dae62c156461a0f44219f2')) |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
208 self.assertEqual(len(revsymbol(repo, 'tip').parents()), 1) |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
209 self.assertEqual(revsymbol(repo, 'default').extra()['convert_revision'], |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
210 'svn:df2126f7-00ab-4d49-b42c-7e981dde0bcf/trunk@6') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
211 self.assertEqual(revsymbol(repo, 'tip'), revsymbol(repo, 'default')) |
18
f4c751037a4a
Add a quick test for diff-based pull.
Augie Fackler <durin42@gmail.com>
parents:
16
diff
changeset
|
212 self.assertEqual(len(repo.heads()), 2) |
f4c751037a4a
Add a quick test for diff-based pull.
Augie Fackler <durin42@gmail.com>
parents:
16
diff
changeset
|
213 |
59
430af23bef4a
Performance fix for branches-from-tags in real replay, which is tied up with
Augie Fackler <durin42@gmail.com>
parents:
43
diff
changeset
|
214 def test_oldest_not_trunk_and_tag_vendor_branch(self): |
865
04729f3a3d17
test_util: merge load_fixture_and_fetch() into TestBase method
Patrick Mezard <patrick@mezard.eu>
parents:
833
diff
changeset
|
215 repo = self._load_fixture_and_fetch( |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
216 'tagged_vendor_and_oldest_not_trunk.svndump') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
217 self.assertEqual(node.hex(revsymbol(repo, 'oldest').node()), |
154
6fa97cfbf62f
fetch: Refactor extra creation to be shared by real and diff replay.
Augie Fackler <durin42@gmail.com>
parents:
144
diff
changeset
|
218 '926671740dec045077ab20f110c1595f935334fa') |
1570
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
219 self.assertEqual(revsymbol(repo, 'tip').parents()[0].parents()[0], |
d55c9d0ba350
tests: use scmutils.revsymbol instead of repo.__getitem__ for non-integers
Paul Morelle <paul.morelle@octobus.net>
parents:
1463
diff
changeset
|
220 revsymbol(repo, 'oldest')) |
1588
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
221 # two hashes to be compat with hg < 4.8 |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
222 self.assertTrue(node.hex(revsymbol(repo, 'tip').node()) in |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
223 ('1a6c3f30911d57abb67c257ec0df3e7bc44786f7', |
e2d38f6b8afe
tests: make output comaptible with hash changes in hg-4.8
Pulkit Goyal <pulkit@yandex-team.ru>
parents:
1578
diff
changeset
|
224 'fa799f2781255dba874645e849d75af837472518')) |
59
430af23bef4a
Performance fix for branches-from-tags in real replay, which is tied up with
Augie Fackler <durin42@gmail.com>
parents:
43
diff
changeset
|
225 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
226 def test_empty_repo(self): |
938
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
924
diff
changeset
|
227 # This used to crash HgEditor because it could be closed without |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
924
diff
changeset
|
228 # having been initialized again. |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
229 self._load_fixture_and_fetch('emptyrepo2.svndump') |
938
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
924
diff
changeset
|
230 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
231 def test_fetch_revert(self): |
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
232 repo = self._load_fixture_and_fetch('revert.svndump') |
952
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
233 graph = self.getgraph(repo) |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
234 refgraph = """\ |
1084
ca36d5915dc7
test_util: include Subversion revision when drawing a pretty graph
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1062
diff
changeset
|
235 o changeset: 3:937dcd1206d4 (r4) |
952
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
236 | branch: |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
237 | tags: tip |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
238 | summary: revert2 |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
239 | files: a dir/b |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
240 | |
1084
ca36d5915dc7
test_util: include Subversion revision when drawing a pretty graph
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1062
diff
changeset
|
241 o changeset: 2:9317a748b7c3 (r3) |
952
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
242 | branch: |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
243 | tags: |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
244 | summary: revert |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
245 | files: a dir/b |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
246 | |
1084
ca36d5915dc7
test_util: include Subversion revision when drawing a pretty graph
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1062
diff
changeset
|
247 o changeset: 1:243259a4138a (r2) |
952
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
248 | branch: |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
249 | tags: |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
250 | summary: changefiles |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
251 | files: a dir/b |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
252 | |
1084
ca36d5915dc7
test_util: include Subversion revision when drawing a pretty graph
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1062
diff
changeset
|
253 o changeset: 0:ab86791fc857 (r1) |
952
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
254 branch: |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
255 tags: |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
256 summary: init |
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
257 files: a dir/b |
1051
c41e993f0892
test_fetch_commands: make a failure more readable
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents:
1048
diff
changeset
|
258 |
952
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
259 """ |
1051
c41e993f0892
test_fetch_commands: make a failure more readable
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents:
1048
diff
changeset
|
260 self.assertMultiLineEqual(refgraph, graph) |
952
9c3b4f59e7e6
stupid: do not close branch upon branch-wide revert
Patrick Mezard <patrick@mezard.eu>
parents:
950
diff
changeset
|
261 |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
262 def test_fetch_movetotrunk(self): |
961
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
263 repo = self._load_fixture_and_fetch('movetotrunk.svndump', |
1062
36a5fa6420a0
test_fetch_command: use stupid mode metaclass
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1051
diff
changeset
|
264 subdir='sub1/sub2') |
961
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
265 graph = self.getgraph(repo) |
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
266 refgraph = """\ |
1084
ca36d5915dc7
test_util: include Subversion revision when drawing a pretty graph
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
1062
diff
changeset
|
267 o changeset: 0:02996a5980ba (r3) |
961
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
268 branch: |
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
269 tags: tip |
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
270 summary: move to trunk |
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
271 files: a dir/b |
1051
c41e993f0892
test_fetch_commands: make a failure more readable
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents:
1048
diff
changeset
|
272 |
961
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
273 """ |
1051
c41e993f0892
test_fetch_commands: make a failure more readable
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents:
1048
diff
changeset
|
274 self.assertMultiLineEqual(refgraph, graph) |
961
b729909d3793
tests: add tests where files are moved from root to trunk
Patrick Mezard <patrick@mezard.eu>
parents:
952
diff
changeset
|
275 |