90
90
def test_lookup_notfound(self):
91
91
self.assertRaises(KeyError, list,
92
self.map.lookup_git_sha("5686645d49063c73d35436192dfc9a160c672301"))
92
self.map.lookup_git_sha(b"5686645d49063c73d35436192dfc9a160c672301"))
94
94
def test_blob(self):
95
95
self.map.start_write_group()
96
updater = self.cache.get_updater(Revision("myrevid"))
97
updater.add_object(self._get_test_commit(), { "testament3-sha1": "Test" }, None)
96
updater = self.cache.get_updater(Revision(b"myrevid"))
97
updater.add_object(self._get_test_commit(), { "testament3-sha1": b"Test" }, None)
100
updater.add_object(b, ("myfileid", "myrevid"), None)
100
updater.add_object(b, (b"myfileid", b"myrevid"), None)
102
102
self.map.commit_write_group()
103
103
self.assertEqual(
104
[("blob", ("myfileid", "myrevid"))],
104
[("blob", (b"myfileid", b"myrevid"))],
105
105
list(self.map.lookup_git_sha(b.id)))
106
106
self.assertEqual(b.id,
107
self.map.lookup_blob_id("myfileid", "myrevid"))
107
self.map.lookup_blob_id(b"myfileid", b"myrevid"))
109
109
def test_tree(self):
110
110
self.map.start_write_group()
111
updater = self.cache.get_updater(Revision("somerevid"))
111
updater = self.cache.get_updater(Revision(b"somerevid"))
112
112
updater.add_object(self._get_test_commit(), {
113
"testament3-sha1": "mytestamentsha" }, None)
113
"testament3-sha1": b"mytestamentsha" }, None)
115
t.add("somename", stat.S_IFREG, Blob().id)
116
updater.add_object(t, ("fileid", "myrevid"), "")
115
t.add(b"somename", stat.S_IFREG, Blob().id)
116
updater.add_object(t, (b"fileid", b"myrevid"), b"")
118
118
self.map.commit_write_group()
119
self.assertEqual([("tree", ("fileid", "myrevid"))],
119
self.assertEqual([("tree", (b"fileid", b"myrevid"))],
120
120
list(self.map.lookup_git_sha(t.id)))
121
121
# It's possible for a backend to not implement lookup_tree
123
123
self.assertEqual(t.id,
124
self.map.lookup_tree_id("fileid", "myrevid"))
124
self.map.lookup_tree_id(b"fileid", b"myrevid"))
125
125
except NotImplementedError:
128
128
def test_revids(self):
129
129
self.map.start_write_group()
130
updater = self.cache.get_updater(Revision("myrevid"))
130
updater = self.cache.get_updater(Revision(b"myrevid"))
131
131
c = self._get_test_commit()
132
updater.add_object(c, {"testament3-sha1": "mtestament"}, None)
132
updater.add_object(c, {"testament3-sha1": b"mtestament"}, None)
134
134
self.map.commit_write_group()
135
self.assertEqual(["myrevid"], list(self.map.revids()))
135
self.assertEqual([b"myrevid"], list(self.map.revids()))
137
137
def test_missing_revisions(self):
138
138
self.map.start_write_group()
139
updater = self.cache.get_updater(Revision("myrevid"))
139
updater = self.cache.get_updater(Revision(b"myrevid"))
140
140
c = self._get_test_commit()
141
updater.add_object(c, {"testament3-sha1": "testament"}, None)
141
updater.add_object(c, {"testament3-sha1": b"testament"}, None)
143
143
self.map.commit_write_group()
144
self.assertEqual(set(["lala", "bla"]),
145
set(self.map.missing_revisions(["myrevid", "lala", "bla"])))
144
self.assertEqual(set([b"lala", b"bla"]),
145
set(self.map.missing_revisions([b"myrevid", b"lala", b"bla"])))
148
148
class DictGitShaMapTests(TestCase,TestGitShaMap):