91
92
self.assertEquals("180", rev.properties['author-timezone'])
92
93
self.assertEquals("git-v1:" + c.id, rev.revision_id)
95
def test_explicit_encoding(self):
97
c.tree = "cc9462f7f8263ef5adfbeff2fb936bb36b504cba"
98
c.message = "Some message"
99
c.committer = "Committer"
102
c.commit_timezone = 60 * 5
103
c.author_timezone = 60 * 3
104
c.author = u"Authér".encode("iso8859-1")
105
c.encoding = "iso8859-1"
107
rev = BzrGitMappingv1().import_commit(c)
108
self.assertEquals(u"Authér", rev.properties['author'])
109
self.assertEquals("iso8859-1", rev.properties["git-explicit-encoding"])
110
self.assertTrue("git-implicit-encoding" not in rev.properties)
112
def test_implicit_encoding_fallback(self):
114
c.tree = "cc9462f7f8263ef5adfbeff2fb936bb36b504cba"
115
c.message = "Some message"
116
c.committer = "Committer"
119
c.commit_timezone = 60 * 5
120
c.author_timezone = 60 * 3
121
c.author = u"Authér".encode("latin1")
123
rev = BzrGitMappingv1().import_commit(c)
124
self.assertEquals(u"Authér", rev.properties['author'])
125
self.assertEquals("latin1", rev.properties["git-implicit-encoding"])
126
self.assertTrue("git-explicit-encoding" not in rev.properties)
128
def test_implicit_encoding_utf8(self):
130
c.tree = "cc9462f7f8263ef5adfbeff2fb936bb36b504cba"
131
c.message = "Some message"
132
c.committer = "Committer"
135
c.commit_timezone = 60 * 5
136
c.author_timezone = 60 * 3
137
c.author = u"Authér".encode("utf-8")
139
rev = BzrGitMappingv1().import_commit(c)
140
self.assertEquals(u"Authér", rev.properties['author'])
141
self.assertTrue("git-explicit-encoding" not in rev.properties)
142
self.assertTrue("git-implicit-encoding" not in rev.properties)
96
145
class RoundtripRevisionsFromGit(tests.TestCase):
116
165
self.assertEquals(commit1.author_time, commit2.author_time)
117
166
self.assertEquals(commit1.author_timezone, commit2.author_timezone)
118
167
self.assertEquals(commit1.message, commit2.message)
168
self.assertEquals(commit1.encoding, commit2.encoding)
120
170
def test_commit(self):
129
179
c.author = "Author <author>"
130
180
self.assertRoundtripCommit(c)
182
def test_commit_encoding(self):
184
c.tree = "cc9462f7f8263ef5adfbeff2fb936bb36b504cba"
185
c.message = "Some message"
186
c.committer = "Committer <Committer>"
187
c.encoding = 'iso8859-1'
189
c.commit_timezone = -60 * 3
191
c.author_timezone = 60 * 2
192
c.author = "Author <author>"
193
self.assertRoundtripCommit(c)
133
196
class DirectoryToTreeTests(tests.TestCase):