~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/blackbox/test_annotate.py

  • Committer: Vincent Ladeuil
  • Date: 2010-01-25 15:55:48 UTC
  • mto: (4985.1.4 add-attr-cleanup)
  • mto: This revision was merged to the branch mainline in revision 4988.
  • Revision ID: v.ladeuil+lp@free.fr-20100125155548-0l352pujvt5bzl5e
Deploy addAttrCleanup on the whole test suite.

Several use case worth mentioning:

- setting a module or any other object attribute is the majority
by far. In some cases the setting itself is deferred but most of
the time we want to set at the same time we add the cleanup.

- there multiple occurrences of protecting hooks or ui factory
which are now useless (the test framework takes care of that now),

- there was some lambda uses that can now be avoided.

That first cleanup already simplifies things a lot.

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
from bzrlib.branch import Branch
30
30
from bzrlib.config import extract_email_address
31
31
from bzrlib.tests import TestCaseWithTransport
 
32
from bzrlib.urlutils import joinpath
32
33
 
33
34
 
34
35
class TestAnnotate(TestCaseWithTransport):
153
154
class TestSimpleAnnotate(TestCaseWithTransport):
154
155
    """Annotate tests with no complex setup."""
155
156
 
156
 
    def _setup_edited_file(self):
 
157
    def _setup_edited_file(self, relpath='.'):
157
158
        """Create a tree with a locally edited file."""
158
 
        tree = self.make_branch_and_tree('.')
159
 
        self.build_tree_contents([('file', 'foo\ngam\n')])
 
159
        tree = self.make_branch_and_tree(relpath)
 
160
        file_relpath = joinpath(relpath, 'file')
 
161
        self.build_tree_contents([(file_relpath, 'foo\ngam\n')])
160
162
        tree.add('file')
161
163
        tree.commit('add file', committer="test@host", rev_id="rev1")
162
 
        self.build_tree_contents([('file', 'foo\nbar\ngam\n')])
 
164
        self.build_tree_contents([(file_relpath, 'foo\nbar\ngam\n')])
163
165
        tree.branch.get_config().set_user_option('email', 'current@host2')
 
166
        return tree
 
167
 
 
168
    def test_annotate_cmd_revspec_branch(self):
 
169
        tree = self._setup_edited_file('trunk')
 
170
        tree.branch.create_checkout(self.get_url('work'), lightweight=True)
 
171
        os.chdir('work')
 
172
        out, err = self.run_bzr('annotate file -r branch:../trunk')
 
173
        self.assertEqual('', err)
 
174
        self.assertEqual(
 
175
            '1   test@ho | foo\n'
 
176
            '            | gam\n',
 
177
            out)
164
178
 
165
179
    def test_annotate_edited_file(self):
166
180
        tree = self._setup_edited_file()