Mercurial > hgsubversion
comparison tests/test_externals.py @ 315:963d27a0b1c2
svnexternals: do not use peg revisions as --rev replacements
Peg revisions are now parsed separately. If a revision is supplied but not a
peg revision, we used the former as peg revision, as subversion seems to do.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Sun, 03 May 2009 21:42:44 -0500 |
parents | ba8e91a7c077 |
children | 46e69be8e2c8 |
comparison
equal
deleted
inserted
replaced
314:2257bfc01749 | 315:963d27a0b1c2 |
---|---|
31 | 31 |
32 def test_parsedefinitions(self): | 32 def test_parsedefinitions(self): |
33 # Taken from svn book | 33 # Taken from svn book |
34 samples = [ | 34 samples = [ |
35 ('third-party/sounds http://svn.example.com/repos/sounds', | 35 ('third-party/sounds http://svn.example.com/repos/sounds', |
36 ('third-party/sounds', None, 'http://svn.example.com/repos/sounds')), | 36 ('third-party/sounds', None, 'http://svn.example.com/repos/sounds', None)), |
37 ('third-party/skins -r148 http://svn.example.com/skinproj', | 37 ('third-party/skins -r148 http://svn.example.com/skinproj', |
38 ('third-party/skins', '148', 'http://svn.example.com/skinproj')), | 38 ('third-party/skins', '148', 'http://svn.example.com/skinproj', None)), |
39 ('third-party/skins -r 148 http://svn.example.com/skinproj', | 39 ('third-party/skins -r 148 http://svn.example.com/skinproj', |
40 ('third-party/skins', '148', 'http://svn.example.com/skinproj')), | 40 ('third-party/skins', '148', 'http://svn.example.com/skinproj', None)), |
41 ('http://svn.example.com/repos/sounds third-party/sounds', | 41 ('http://svn.example.com/repos/sounds third-party/sounds', |
42 ('third-party/sounds', None, 'http://svn.example.com/repos/sounds')), | 42 ('third-party/sounds', None, 'http://svn.example.com/repos/sounds', None)), |
43 ('-r148 http://svn.example.com/skinproj third-party/skins', | 43 ('-r148 http://svn.example.com/skinproj third-party/skins', |
44 ('third-party/skins', '148', 'http://svn.example.com/skinproj')), | 44 ('third-party/skins', '148', 'http://svn.example.com/skinproj', None)), |
45 ('-r 148 http://svn.example.com/skinproj third-party/skins', | 45 ('-r 148 http://svn.example.com/skinproj third-party/skins', |
46 ('third-party/skins', '148', 'http://svn.example.com/skinproj')), | 46 ('third-party/skins', '148', 'http://svn.example.com/skinproj', None)), |
47 ('http://svn.example.com/skin-maker@21 third-party/skins/toolkit', | 47 ('http://svn.example.com/skin-maker@21 third-party/skins/toolkit', |
48 ('third-party/skins/toolkit', '21', 'http://svn.example.com/skin-maker')), | 48 ('third-party/skins/toolkit', None, 'http://svn.example.com/skin-maker', '21')), |
49 ] | 49 ] |
50 | 50 |
51 for line, expected in samples: | 51 for line, expected in samples: |
52 self.assertEqual(expected, svnexternals.parsedefinition(line)) | 52 self.assertEqual(expected, svnexternals.parsedefinition(line)) |
53 | 53 |
58 ^/externals/project1 deps/project1 | 58 ^/externals/project1 deps/project1 |
59 """ | 59 """ |
60 self.assertEqual(ref0, repo[0]['.hgsvnexternals'].data()) | 60 self.assertEqual(ref0, repo[0]['.hgsvnexternals'].data()) |
61 ref1 = """[.] | 61 ref1 = """[.] |
62 ^/externals/project1 deps/project1 | 62 ^/externals/project1 deps/project1 |
63 ^/externals/project2 deps/project2 | 63 -r2 ^/externals/project2@2 deps/project2 |
64 """ | 64 """ |
65 self.assertEqual(ref1, repo[1]['.hgsvnexternals'].data()) | 65 self.assertEqual(ref1, repo[1]['.hgsvnexternals'].data()) |
66 | 66 |
67 ref2 = """[.] | 67 ref2 = """[.] |
68 ^/externals/project2 deps/project2 | 68 -r2 ^/externals/project2@2 deps/project2 |
69 [subdir] | 69 [subdir] |
70 ^/externals/project1 deps/project1 | 70 ^/externals/project1 deps/project1 |
71 [subdir2] | 71 [subdir2] |
72 ^/externals/project1 deps/project1 | 72 ^/externals/project1 deps/project1 |
73 """ | 73 """ |
74 actual = repo[2]['.hgsvnexternals'].data() | 74 actual = repo[2]['.hgsvnexternals'].data() |
75 self.assertEqual(ref2, actual) | 75 self.assertEqual(ref2, actual) |
76 | 76 |
77 ref3 = """[.] | 77 ref3 = """[.] |
78 ^/externals/project2 deps/project2 | 78 -r2 ^/externals/project2@2 deps/project2 |
79 [subdir] | 79 [subdir] |
80 ^/externals/project1 deps/project1 | 80 ^/externals/project1 deps/project1 |
81 """ | 81 """ |
82 self.assertEqual(ref3, repo[3]['.hgsvnexternals'].data()) | 82 self.assertEqual(ref3, repo[3]['.hgsvnexternals'].data()) |
83 | 83 |
85 ^/externals/project1 deps/project1 | 85 ^/externals/project1 deps/project1 |
86 """ | 86 """ |
87 self.assertEqual(ref4, repo[4]['.hgsvnexternals'].data()) | 87 self.assertEqual(ref4, repo[4]['.hgsvnexternals'].data()) |
88 | 88 |
89 ref5 = """[.] | 89 ref5 = """[.] |
90 ^/externals/project2 deps/project2 | 90 -r2 ^/externals/project2@2 deps/project2 |
91 [subdir2] | 91 [subdir2] |
92 ^/externals/project1 deps/project1 | 92 ^/externals/project1 deps/project1 |
93 """ | 93 """ |
94 self.assertEqual(ref5, repo[5]['.hgsvnexternals'].data()) | 94 self.assertEqual(ref5, repo[5]['.hgsvnexternals'].data()) |
95 | 95 |
96 ref6 = """[.] | 96 ref6 = """[.] |
97 ^/externals/project2 deps/project2 | 97 -r2 ^/externals/project2@2 deps/project2 |
98 """ | 98 """ |
99 self.assertEqual(ref6, repo[6]['.hgsvnexternals'].data()) | 99 self.assertEqual(ref6, repo[6]['.hgsvnexternals'].data()) |
100 | 100 |
101 def test_externals_stupid(self): | 101 def test_externals_stupid(self): |
102 self.test_externals(True) | 102 self.test_externals(True) |