/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/git/tests/test_mapping.py

  • Committer: Jelmer Vernooij
  • Date: 2018-11-16 23:15:15 UTC
  • mfrom: (7180 work)
  • mto: This revision was merged to the branch mainline in revision 7183.
  • Revision ID: jelmer@jelmer.uk-20181116231515-zqd2yn6kj8lfydyp
Merge trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
27
27
    Blob,
28
28
    Commit,
29
29
    Tag,
30
 
    Tree,
31
30
    parse_timezone,
32
31
    )
33
32
from dulwich.tests.utils import (
50
49
        self.assertEqual(b"git-v1:"
51
50
                         b"c6a4d8f1fa4ac650748e647c4b1b368f589a7356",
52
51
                         BzrGitMappingv1().revision_id_foreign_to_bzr(
53
 
                            b"c6a4d8f1fa4ac650748e647c4b1b368f589a7356"))
 
52
                             b"c6a4d8f1fa4ac650748e647c4b1b368f589a7356"))
54
53
 
55
54
    def test_simple_bzr_to_git_revision_id(self):
56
55
        self.assertEqual((b"c6a4d8f1fa4ac650748e647c4b1b368f589a7356",
57
 
                         BzrGitMappingv1()),
 
56
                          BzrGitMappingv1()),
58
57
                         BzrGitMappingv1().revision_id_bzr_to_foreign(
59
 
                            b"git-v1:"
60
 
                            b"c6a4d8f1fa4ac650748e647c4b1b368f589a7356"))
 
58
            b"git-v1:"
 
59
            b"c6a4d8f1fa4ac650748e647c4b1b368f589a7356"))
61
60
 
62
61
    def test_is_control_file(self):
63
62
        mapping = BzrGitMappingv1()
110
109
        c.author = b"Author"
111
110
        mapping = BzrGitMappingv1()
112
111
        rev, roundtrip_revid, verifiers = mapping.import_commit(c,
113
 
            mapping.revision_id_foreign_to_bzr)
 
112
                                                                mapping.revision_id_foreign_to_bzr)
114
113
        self.assertEqual(None, roundtrip_revid)
115
114
        self.assertEqual({}, verifiers)
116
115
        self.assertEqual(u"Some message", rev.message)
135
134
        c.encoding = b"iso8859-1"
136
135
        mapping = BzrGitMappingv1()
137
136
        rev, roundtrip_revid, verifiers = mapping.import_commit(c,
138
 
            mapping.revision_id_foreign_to_bzr)
 
137
                                                                mapping.revision_id_foreign_to_bzr)
139
138
        self.assertEqual(None, roundtrip_revid)
140
139
        self.assertEqual({}, verifiers)
141
140
        self.assertEqual(u"Authér", rev.properties[u'author'])
154
153
        c.author = u"Authér".encode("latin1")
155
154
        mapping = BzrGitMappingv1()
156
155
        rev, roundtrip_revid, verifiers = mapping.import_commit(c,
157
 
            mapping.revision_id_foreign_to_bzr)
 
156
                                                                mapping.revision_id_foreign_to_bzr)
158
157
        self.assertEqual(None, roundtrip_revid)
159
158
        self.assertEqual({}, verifiers)
160
159
        self.assertEqual(u"Authér", rev.properties[u'author'])
173
172
        c.author = u"Authér".encode("utf-8")
174
173
        mapping = BzrGitMappingv1()
175
174
        rev, roundtrip_revid, verifiers = mapping.import_commit(c,
176
 
            mapping.revision_id_foreign_to_bzr)
 
175
                                                                mapping.revision_id_foreign_to_bzr)
177
176
        self.assertEqual(None, roundtrip_revid)
178
177
        self.assertEqual({}, verifiers)
179
178
        self.assertEqual(u"Authér", rev.properties[u'author'])
193
192
        c._extra.append((b"iamextra", b"foo"))
194
193
        mapping = BzrGitMappingv1()
195
194
        self.assertRaises(UnknownCommitExtra, mapping.import_commit, c,
196
 
            mapping.revision_id_foreign_to_bzr)
 
195
                          mapping.revision_id_foreign_to_bzr)
197
196
 
198
197
    def test_mergetag(self):
199
198
        c = Commit()
206
205
        c.author_timezone = 60 * 3
207
206
        c.author = b"Author"
208
207
        tag = make_object(Tag,
209
 
                tagger=b'Jelmer Vernooij <jelmer@samba.org>',
210
 
                name=b'0.1', message=None,
211
 
                object=(Blob, b'd80c186a03f423a81b39df39dc87fd269736ca86'),
212
 
                tag_time=423423423, tag_timezone=0)
 
208
                          tagger=b'Jelmer Vernooij <jelmer@samba.org>',
 
209
                          name=b'0.1', message=None,
 
210
                          object=(
 
211
                              Blob, b'd80c186a03f423a81b39df39dc87fd269736ca86'),
 
212
                          tag_time=423423423, tag_timezone=0)
213
213
        c.mergetag = [tag]
214
214
        mapping = BzrGitMappingv1()
215
215
        rev, roundtrip_revid, verifiers = mapping.import_commit(
216
 
                c, mapping.revision_id_foreign_to_bzr)
217
 
        self.assertEqual(rev.properties[u'git-mergetag-0'], tag.as_raw_string())
 
216
            c, mapping.revision_id_foreign_to_bzr)
 
217
        self.assertEqual(
 
218
            rev.properties[u'git-mergetag-0'], tag.as_raw_string())
218
219
 
219
220
 
220
221
class RoundtripRevisionsFromBazaar(tests.TestCase):
227
228
 
228
229
    def assertRoundtripRevision(self, orig_rev):
229
230
        commit = self.mapping.export_commit(orig_rev, b"mysha",
230
 
            self._lookup_parent, True, b"testamentsha")
 
231
                                            self._lookup_parent, True, b"testamentsha")
231
232
        rev, roundtrip_revid, verifiers = self.mapping.import_commit(
232
233
            commit, self.mapping.revision_id_foreign_to_bzr)
233
234
        self.assertEqual(rev.revision_id,
234
 
            self.mapping.revision_id_foreign_to_bzr(commit.id))
 
235
                         self.mapping.revision_id_foreign_to_bzr(commit.id))
235
236
        if self.mapping.roundtripping:
236
 
            self.assertEqual({"testament3-sha1": b"testamentsha"} , verifiers)
 
237
            self.assertEqual({"testament3-sha1": b"testamentsha"}, verifiers)
237
238
            self.assertEqual(orig_rev.revision_id, roundtrip_revid)
238
239
            self.assertEqual(orig_rev.properties, rev.properties)
239
240
            self.assertEqual(orig_rev.committer, rev.committer)
245
246
            self.assertEqual({}, verifiers)
246
247
 
247
248
    def test_simple_commit(self):
248
 
        r = Revision(self.mapping.revision_id_foreign_to_bzr(b"edf99e6c56495c620f20d5dacff9859ff7119261"))
 
249
        r = Revision(self.mapping.revision_id_foreign_to_bzr(
 
250
            b"edf99e6c56495c620f20d5dacff9859ff7119261"))
249
251
        r.message = "MyCommitMessage"
250
252
        r.parent_ids = []
251
253
        r.committer = "Jelmer Vernooij <jelmer@apache.org>"
301
303
        rev, roundtrip_revid, verifiers = self.mapping.import_commit(
302
304
            commit1, self.mapping.revision_id_foreign_to_bzr)
303
305
        commit2 = self.mapping.export_commit(rev, "12341212121212", None,
304
 
            True, None)
 
306
                                             True, None)
305
307
        self.assertEqual(commit1.committer, commit2.committer)
306
308
        self.assertEqual(commit1.commit_time, commit2.commit_time)
307
309
        self.assertEqual(commit1.commit_timezone, commit2.commit_timezone)
385
387
        c.author_timezone = 60 * 2
386
388
        c.author = b"Author <author>"
387
389
        tag = make_object(Tag,
388
 
                tagger=b'Jelmer Vernooij <jelmer@samba.org>',
389
 
                name=b'0.1', message=None,
390
 
                object=(Blob, b'd80c186a03f423a81b39df39dc87fd269736ca86'),
391
 
                tag_time=423423423, tag_timezone=0)
 
390
                          tagger=b'Jelmer Vernooij <jelmer@samba.org>',
 
391
                          name=b'0.1', message=None,
 
392
                          object=(
 
393
                              Blob, b'd80c186a03f423a81b39df39dc87fd269736ca86'),
 
394
                          tag_time=423423423, tag_timezone=0)
392
395
        c.mergetag = [tag]
393
396
        self.assertRoundtripCommit(c)
394
397
 
407
410
        self.assertEqual(b"person <bar@blah.nl>",
408
411
                         fix_person_identifier(b"person<bar@blah.nl>"))
409
412
        self.assertRaises(ValueError,
410
 
                         fix_person_identifier, b"person >bar@blah.nl<")
 
413
                          fix_person_identifier, b"person >bar@blah.nl<")