~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/workingtree_implementations/test_move.py

  • Committer: Robert Collins
  • Date: 2007-03-01 03:20:19 UTC
  • mto: (2255.11.3 dirstate)
  • mto: This revision was merged to the branch mainline in revision 2322.
  • Revision ID: robertc@robertcollins.net-20070301032019-s9lbs2lv8xa6zqxk
Fix WorkingTree4.move to return the moved paths, and update the tree implementation tests for move to check them.

Show diffs side-by-side

added added

removed removed

Lines of Context:
52
52
        tree = self.make_branch_and_tree('.')
53
53
        tree.add(['a1', 'sub1'])
54
54
        tree.commit('initial commit')
55
 
        tree.move(['a1'], to_dir='sub1', after=False)
 
55
        self.assertEqual([('a1', 'sub1/a1')],
 
56
            tree.move(['a1'], to_dir='sub1', after=False))
56
57
 
57
58
    def test_move_correct_call_unnamed(self):
58
59
        """tree.move has the deprecated parameter 'to_name'.
63
64
        tree = self.make_branch_and_tree('.')
64
65
        tree.add(['a1', 'sub1'])
65
66
        tree.commit('initial commit')
66
 
        tree.move(['a1'], 'sub1', after=False)
 
67
        self.assertEqual([('a1', 'sub1/a1')],
 
68
            tree.move(['a1'], 'sub1', after=False))
67
69
 
68
70
    def test_move_deprecated_wrong_call(self):
69
71
        """tree.move has the deprecated parameter 'to_name'.
171
173
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id'),
172
174
                               ('b/c', 'c-id')], tree.basis_tree())
173
175
        a_contents = tree.get_file_text('a-id')
174
 
        tree.move(['a'], 'b')
 
176
        self.assertEqual([('a', 'b/a')],
 
177
            tree.move(['a'], 'b'))
175
178
        self.assertTreeLayout([('', root_id), ('b', 'b-id'), ('b/a', 'a-id'),
176
179
                               ('b/c', 'c-id')], tree)
177
180
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id'),
186
189
        tree.commit('initial', rev_id='rev-1')
187
190
        root_id = tree.get_root_id()
188
191
        c_contents = tree.get_file_text('c-id')
189
 
        tree.move(['b/c'], '')
 
192
        self.assertEqual([('b/c', 'c')],
 
193
            tree.move(['b/c'], ''))
190
194
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id'),
191
195
                               ('c', 'c-id')], tree)
192
196
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id'),
245
249
                              tree)
246
250
        # We don't need after=True as long as source is missing and target
247
251
        # exists.
248
 
        tree.move(['a'], 'b')
 
252
        self.assertEqual([('a', 'b/a')],
 
253
            tree.move(['a'], 'b'))
249
254
        self.assertTreeLayout([('', root_id), ('b', 'b-id'), ('b/a', 'a-id')],
250
255
                              tree)
251
256
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id')],
262
267
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id')],
263
268
                              tree)
264
269
        # Passing after=True should work as well
265
 
        tree.move(['a'], 'b', after=True)
 
270
        self.assertEqual([('a', 'b/a')],
 
271
            tree.move(['a'], 'b', after=True))
266
272
        self.assertTreeLayout([('', root_id), ('b', 'b-id'), ('b/a', 'a-id')],
267
273
                              tree)
268
274
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id')],
310
316
        self.assertFileEqual(a_text, 'a')
311
317
        self.assertFileEqual(ba_text, 'b/a')
312
318
        # But you can pass after=True
313
 
        tree.move(['a'], 'b', after=True)
 
319
        self.assertEqual([('a', 'b/a')],
 
320
            tree.move(['a'], 'b', after=True))
314
321
        self.assertTreeLayout([('', root_id), ('b', 'b-id'), ('b/a', 'a-id')],
315
322
                              tree)
316
323
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id')],
327
334
        tree.commit('initial', rev_id='rev-1')
328
335
        root_id = tree.get_root_id()
329
336
 
330
 
        tree.move(['a'], 'e')
 
337
        self.assertEqual([('a', 'e/a')],
 
338
            tree.move(['a'], 'e'))
331
339
        self.assertTreeLayout([('', root_id), ('e', 'e-id'), ('e/a', 'a-id'),
332
340
                               ('e/a/b', 'b-id'), ('e/a/c', 'c-id'),
333
341
                               ('e/a/c/d', 'd-id')], tree)
343
351
        tree.commit('initial', rev_id='rev-1')
344
352
        root_id = tree.get_root_id()
345
353
 
346
 
        tree.move(['a/b'], 'c')
 
354
        self.assertEqual([('a/b', 'c/b')],
 
355
            tree.move(['a/b'], 'c'))
347
356
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('c', 'c-id'),
348
357
                               ('c/b', 'b-id')], tree)
349
358
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('c', 'c-id'),
350
359
                               ('a/b', 'b-id')], tree.basis_tree())
351
360
 
352
 
        tree.move(['c/b'], '')
 
361
        self.assertEqual([('c/b', 'b')],
 
362
            tree.move(['c/b'], ''))
353
363
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('b', 'b-id'),
354
364
                               ('c', 'c-id')], tree)
355
365
        self.assertTreeLayout([('', root_id), ('a', 'a-id'), ('c', 'c-id'),