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

  • Committer: John Arbash Meinel
  • Date: 2011-08-18 13:27:18 UTC
  • mto: (6015.9.14 2.4)
  • mto: This revision was merged to the branch mainline in revision 6090.
  • Revision ID: john@arbash-meinel.com-20110818132718-b4rrujubsaa3evuz
Add a __repr__ to _LazyListJoin to make it easier to debug.

Show diffs side-by-side

added added

removed removed

Lines of Context:
63
63
LINES_AY = 'a\nb\nc\nd\ne\nf\ng\nh\ni\ny\n'
64
64
 
65
65
 
66
 
class TestShelver(tests.TestCaseWithTransport):
 
66
class ShelfTestCase(tests.TestCaseWithTransport):
67
67
 
68
68
    def create_shelvable_tree(self):
69
69
        tree = self.make_branch_and_tree('tree')
73
73
        self.build_tree_contents([('tree/foo', LINES_ZY)])
74
74
        return tree
75
75
 
 
76
 
 
77
class TestShelver(ShelfTestCase):
 
78
 
76
79
    def test_unexpected_prompt_failure(self):
77
80
        tree = self.create_shelvable_tree()
78
81
        tree.lock_tree_write()
190
193
        shelver.expect('Shelve adding file "foo"? [yNfq?]', 'y')
191
194
        shelver.expect('Shelve 1 change(s)? [yNfq?]', 'y')
192
195
        shelver.run()
193
 
        self.failIfExists('tree/foo')
 
196
        self.assertPathDoesNotExist('tree/foo')
194
197
 
195
198
    def test_shelve_kind_change(self):
196
199
        tree = self.create_shelvable_tree()
299
302
        finally:
300
303
            tree.unlock()
301
304
 
302
 
    def test_shelve_old_root_deleted(self):
 
305
    def test_shelve_old_root_preserved(self):
303
306
        tree1 = self.make_branch_and_tree('tree1')
304
307
        tree1.commit('add root')
 
308
        tree1_root_id = tree1.get_root_id()
305
309
        tree2 = self.make_branch_and_tree('tree2')
306
310
        rev2 = tree2.commit('add root')
 
311
        self.assertNotEquals(tree1_root_id, tree2.get_root_id())
307
312
        tree1.merge_from_branch(tree2.branch,
308
313
                                from_revision=revision.NULL_REVISION)
309
 
        tree1.commit('Replaced root entry')
 
314
        tree1.commit('merging in tree2')
 
315
        self.assertEquals(tree1_root_id, tree1.get_root_id())
310
316
        # This is essentially assertNotRaises(InconsistentDelta)
311
 
        self.expectFailure('Cannot shelve replacing a root entry',
312
 
                           self.assertRaises, AssertionError,
313
 
                           self.assertRaises, errors.InconsistentDelta,
314
 
                           self.shelve_all, tree1, rev2)
 
317
        # With testtools 0.9.9, it can be rewritten as:
 
318
        # with ExpectedException(AssertionError,
 
319
        #                        'InconsistentDelta not raised'):
 
320
        #     with ExpectedException(errors.InconsistentDelta, ''):
 
321
        #         self.shelve_all(tree1, rev2)
 
322
        e = self.assertRaises(AssertionError, self.assertRaises,
 
323
                              errors.InconsistentDelta, self.shelve_all, tree1,
 
324
                              rev2)
 
325
        self.assertContainsRe('InconsistentDelta not raised', str(e))
315
326
 
316
327
    def test_shelve_split(self):
317
328
        outer_tree = self.make_branch_and_tree('outer')
327
338
                           outer_tree, rev2)
328
339
 
329
340
 
330
 
class TestApplyReporter(TestShelver):
 
341
class TestApplyReporter(ShelfTestCase):
331
342
 
332
343
    def test_shelve_not_diff(self):
333
344
        tree = self.create_shelvable_tree()
422
433
        shelver.expect('Delete file "foo"? [yNfq?]', 'y')
423
434
        shelver.expect('Apply 1 change(s)? [yNfq?]', 'y')
424
435
        shelver.run()
425
 
        self.failIfExists('tree/foo')
 
436
        self.assertPathDoesNotExist('tree/foo')
426
437
 
427
438
    def test_shelve_kind_change(self):
428
439
        tree = self.create_shelvable_tree()