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

  • Committer: Martin Pool
  • Date: 2009-08-28 04:13:16 UTC
  • mfrom: (4634.6.8 2.0)
  • mto: This revision was merged to the branch mainline in revision 4660.
  • Revision ID: mbp@sourcefrog.net-20090828041316-adcbxfnfpc4bjtpl
Merge 2.0 back to trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
113
113
        shelf_file = creator.shelf_transform._limbo_name(s_trans_id)
114
114
        self.assertFileEqual(expected_content, shelf_file)
115
115
 
116
 
    def test_shelve_content_change(self):
 
116
    def prepare_content_change(self):
117
117
        tree = self.make_branch_and_tree('.')
118
118
        tree.lock_write()
119
119
        self.addCleanup(tree.unlock)
123
123
        self.build_tree_contents([('foo', 'b\na\nc\n')])
124
124
        creator = shelf.ShelfCreator(tree, tree.basis_tree())
125
125
        self.addCleanup(creator.finalize)
 
126
        return creator
 
127
 
 
128
    def test_shelve_content_change(self):
 
129
        creator = self.prepare_content_change()
126
130
        self.assertEqual([('modify text', 'foo-id')],
127
131
                         list(creator.iter_shelvable()))
128
132
        creator.shelve_lines('foo-id', ['a\n', 'c\n'])
130
134
        self.assertFileEqual('a\nc\n', 'foo')
131
135
        self.assertShelvedFileEqual('b\na\n', creator, 'foo-id')
132
136
 
 
137
    def test_shelve_change_handles_modify_text(self):
 
138
        creator = self.prepare_content_change()
 
139
        creator.shelve_change(('modify text', 'foo-id'))
 
140
        creator.transform()
 
141
        self.assertFileEqual('a\n', 'foo')
 
142
        self.assertShelvedFileEqual('b\na\nc\n', creator, 'foo-id')
 
143
 
 
144
    def test_shelve_all(self):
 
145
        creator = self.prepare_content_change()
 
146
        creator.shelve_all()
 
147
        creator.transform()
 
148
        self.assertFileEqual('a\n', 'foo')
 
149
        self.assertShelvedFileEqual('b\na\nc\n', creator, 'foo-id')
133
150
 
134
151
    def prepare_shelve_creation(self):
135
152
        tree = self.make_branch_and_tree('.')
447
464
        finally:
448
465
            tree.unlock()
449
466
 
 
467
    def test_shelve_skips_added_root(self):
 
468
        """Skip adds of the root when iterating through shelvable changes."""
 
469
        tree = self.make_branch_and_tree('tree')
450
470
        tree.lock_tree_write()
451
471
        self.addCleanup(tree.unlock)
 
472
        creator = shelf.ShelfCreator(tree, tree.basis_tree())
 
473
        self.addCleanup(creator.finalize)
 
474
        self.assertEqual([], list(creator.iter_shelvable()))
 
475
 
 
476
    def test_shelve_skips_added_root(self):
 
477
        """Skip adds of the root when iterating through shelvable changes."""
 
478
        tree = self.make_branch_and_tree('tree')
 
479
        creator = shelf.ShelfCreator(tree, tree.basis_tree())
 
480
        self.addCleanup(creator.finalize)
 
481
        self.assertEqual([], list(creator.iter_shelvable()))
452
482
 
453
483
 
454
484
class TestUnshelver(tests.TestCaseWithTransport):