/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 tests/test_fetch.py

Add more tests.

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
from dulwich.objects import (
18
18
    Blob,
 
19
    Tree,
19
20
    )
20
21
import os
21
22
 
22
23
from bzrlib import (
23
24
    knit,
 
25
    osutils,
24
26
    versionedfile,
25
27
    )
26
28
from bzrlib.bzrdir import (
128
130
    def setUp(self):
129
131
        super(ImportObjects, self).setUp()
130
132
        self._map = DictGitShaMap()
 
133
        self._mapping = BzrGitMappingv1()
131
134
        factory = knit.make_file_factory(True, versionedfile.PrefixMapper())
132
135
        self._texts = factory(self.get_transport('texts'))
133
136
 
135
138
        blob = Blob.from_string("bar")
136
139
        inv = Inventory()
137
140
        inv.revision_id = "somerevid"
138
 
        import_git_blob(self._texts, BzrGitMappingv1(), "bla", blob, 
 
141
        import_git_blob(self._texts, self._mapping, "bla", blob, 
139
142
            inv, [], self._map, False)
140
143
        self.assertEquals(set([('bla', 'somerevid')]), self._texts.keys())
 
144
        self.assertEquals(self._texts.get_record_stream([('bla', 'somerevid')],
 
145
            "unordered", True).next().get_bytes_as("fulltext"), "bar")
 
146
        self.assertEquals(False, inv["bla"].executable)
 
147
        self.assertEquals("file", inv["bla"].kind)
 
148
        self.assertEquals("somerevid", inv["bla"].revision)
 
149
        self.assertEquals(osutils.sha_strings(["bar"]), inv["bla"].text_sha1)
 
150
 
 
151
    def test_import_tree_empty_root(self):
 
152
        inv = Inventory()
 
153
        inv.revision_id = "somerevid"
 
154
        tree = Tree()
 
155
        tree.serialize()
 
156
        import_git_tree(self._texts, self._mapping, "", tree, inv, [], 
 
157
            self._map, lambda sha: None)
 
158
        self.assertEquals(set([("TREE_ROOT", 'somerevid')]), self._texts.keys())
 
159
        self.assertEquals(False, inv["TREE_ROOT"].executable)
 
160
        self.assertEquals("directory", inv["TREE_ROOT"].kind)
 
161
        self.assertEquals({}, inv["TREE_ROOT"].children)
 
162
        self.assertEquals("somerevid", inv["TREE_ROOT"].revision)
 
163
        self.assertEquals(None, inv["TREE_ROOT"].text_sha1)
 
164
 
 
165
    def test_import_tree_empty(self):
 
166
        inv = Inventory()
 
167
        inv.revision_id = "somerevid"
 
168
        tree = Tree()
 
169
        tree.serialize()
 
170
        import_git_tree(self._texts, self._mapping, "bla", tree, inv, [], 
 
171
            self._map, lambda sha: None)
 
172
        self.assertEquals(set([("bla", 'somerevid')]), self._texts.keys())
 
173
        self.assertEquals("directory", inv["bla"].kind)
 
174
        self.assertEquals(False, inv["bla"].executable)
 
175
        self.assertEquals({}, inv["bla"].children)
 
176
        self.assertEquals("somerevid", inv["bla"].revision)
 
177
        self.assertEquals(None, inv["bla"].text_sha1)