/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_workingtree.py

  • Committer: Breezy landing bot
  • Author(s): Jelmer Vernooij
  • Date: 2018-11-16 22:18:20 UTC
  • mfrom: (7131.13.3 keep-submodule)
  • Revision ID: breezy.the.bot@gmail.com-20181116221820-rjnlcuk6z1n16eo5
Don't show a delta for unchanged submodules.

Merged from https://code.launchpad.net/~jelmer/brz/keep-submodule/+merge/355820

Show diffs side-by-side

added added

removed removed

Lines of Context:
22
22
import os
23
23
import stat
24
24
 
 
25
from dulwich.index import IndexEntry
25
26
from dulwich.objects import (
 
27
    S_IFGITLINK,
26
28
    Blob,
27
29
    Tree,
28
30
    ZERO_SHA,
133
135
    def setUp(self):
134
136
        super(ChangesBetweenGitTreeAndWorkingCopyTests, self).setUp()
135
137
        self.wt = self.make_branch_and_tree('.', format='git')
 
138
        self.store = self.wt.branch.repository._git.object_store
136
139
 
137
140
    def expectDelta(self, expected_changes,
138
 
                    expected_extras=None, want_unversioned=False):
139
 
        store = self.wt.branch.repository._git.object_store
140
 
        try:
141
 
            tree_id = store[self.wt.branch.repository._git.head()].tree
142
 
        except KeyError:
143
 
            tree_id = None
 
141
                    expected_extras=None, want_unversioned=False,
 
142
                    tree_id=None):
 
143
        if tree_id is None:
 
144
            try:
 
145
                tree_id = self.store[self.wt.branch.repository._git.head()].tree
 
146
            except KeyError:
 
147
                tree_id = None
144
148
        with self.wt.lock_read():
145
149
            changes, extras = changes_between_git_tree_and_working_copy(
146
 
                store, tree_id, self.wt, want_unversioned=want_unversioned)
 
150
                self.store, tree_id, self.wt, want_unversioned=want_unversioned)
147
151
            self.assertEqual(expected_changes, list(changes))
148
152
        if expected_extras is None:
149
153
            expected_extras = set()
239
243
             (None, newt.id)),
240
244
            ((None, b'a'), (None, stat.S_IFREG | 0o644), (None, newa.id))
241
245
            ], [b'a'], want_unversioned=True)
 
246
 
 
247
    def test_submodule(self):
 
248
        self.build_tree(['a/'])
 
249
        a = Blob.from_string(b'irrelevant\n')
 
250
        with self.wt.lock_tree_write():
 
251
            (index, index_path) = self.wt._lookup_index(b'a')
 
252
            index[b'a'] = IndexEntry(
 
253
                    0, 0, 0, 0, S_IFGITLINK, 0, 0, 0, a.id, 0)
 
254
            self.wt._index_dirty = True
 
255
        t = Tree()
 
256
        t.add(b"a", S_IFGITLINK , a.id)
 
257
        self.store.add_object(t)
 
258
        self.expectDelta([], tree_id=t.id)