~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2008-06-05 04:05:05 UTC
  • mfrom: (3473.1.1 ianc-integration)
  • Revision ID: pqm@pqm.ubuntu.com-20080605040505-i9kqxg2fps2qjdi0
Add the 'alias' command (Tim Penhey)

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
 
21
21
import os
22
22
 
23
 
from bzrlib import osutils
 
23
import bzrlib
24
24
from bzrlib.tests.blackbox import ExternalBase
25
25
from bzrlib.tests import TestCaseInTempDir, TestCaseWithTransport
26
26
from bzrlib.tests.test_log import (
27
27
    normalize_log,
28
28
    )
29
 
from bzrlib.tests import test_log
30
 
 
31
 
 
32
 
class TestCaseWithoutPropsHandler(ExternalBase, test_log.TestCaseWithoutPropsHandler):
33
 
    pass
34
29
 
35
30
 
36
31
class TestLog(ExternalBase):
138
133
        self.assertTrue('revno: 2\n' not in log)
139
134
        self.assertTrue('branch nick: branch2\n' in log)
140
135
        self.assertTrue('branch nick: branch1\n' not in log)
141
 
 
142
 
    def test_log_change_revno(self):
143
 
        self._prepare()
144
 
        expected_log = self.run_bzr("log -r 1")[0]
145
 
        log = self.run_bzr("log -c 1")[0]
146
 
        self.assertEqualDiff(expected_log, log)
147
 
 
148
 
    def test_log_change_single_revno(self):
149
 
        self._prepare()
150
 
        self.run_bzr_error('bzr: ERROR: Option --change does not'
151
 
                           ' accept revision ranges',
152
 
                           ['log', '--change', '2..3'])
153
 
 
154
 
    def test_log_change_incompatible_with_revision(self):
155
 
        self._prepare()
156
 
        self.run_bzr_error('bzr: ERROR: --revision and --change'
157
 
                           ' are mutually exclusive',
158
 
                           ['log', '--change', '2', '--revision', '3'])
159
 
 
 
136
        
160
137
    def test_log_nonexistent_file(self):
161
138
        # files that don't exist in either the basis tree or working tree
162
139
        # should give an error
195
172
        self.assertContainsRe(log, r'tags: tag1')
196
173
 
197
174
    def test_log_limit(self):
198
 
        tree = self.make_branch_and_tree('.')
199
 
        # We want more commits than our batch size starts at
200
 
        for pos in range(10):
201
 
            tree.commit("%s" % pos)
 
175
        self._prepare()
202
176
        log = self.run_bzr("log --limit 2")[0]
203
177
        self.assertNotContainsRe(log, r'revno: 1\n')
204
 
        self.assertNotContainsRe(log, r'revno: 2\n')
205
 
        self.assertNotContainsRe(log, r'revno: 3\n')
206
 
        self.assertNotContainsRe(log, r'revno: 4\n')
207
 
        self.assertNotContainsRe(log, r'revno: 5\n')
208
 
        self.assertNotContainsRe(log, r'revno: 6\n')
209
 
        self.assertNotContainsRe(log, r'revno: 7\n')
210
 
        self.assertNotContainsRe(log, r'revno: 8\n')
211
 
        self.assertContainsRe(log, r'revno: 9\n')
212
 
        self.assertContainsRe(log, r'revno: 10\n')
 
178
        self.assertContainsRe(log, r'revno: 2\n')
 
179
        self.assertContainsRe(log, r'revno: 3\n')
213
180
 
214
181
    def test_log_limit_short(self):
215
182
        self._prepare()
218
185
        self.assertContainsRe(log, r'revno: 2\n')
219
186
        self.assertContainsRe(log, r'revno: 3\n')
220
187
 
221
 
 
222
 
class TestLogMerges(TestCaseWithoutPropsHandler):
 
188
class TestLogMerges(ExternalBase):
223
189
 
224
190
    def _prepare(self):
225
191
        parent_tree = self.make_branch_and_tree('parent')
363
329
 
364
330
    def setUp(self):
365
331
        TestCaseInTempDir.setUp(self)
366
 
        self.user_encoding = osutils._cached_user_encoding
 
332
        self.user_encoding = bzrlib.user_encoding
367
333
 
368
334
    def tearDown(self):
369
 
        osutils._cached_user_encoding = self.user_encoding
 
335
        bzrlib.user_encoding = self.user_encoding
370
336
        TestCaseInTempDir.tearDown(self)
371
337
 
372
338
    def create_branch(self):
385
351
        else:
386
352
            encoded_msg = self._message.encode(encoding)
387
353
 
388
 
        old_encoding = osutils._cached_user_encoding
 
354
        old_encoding = bzrlib.user_encoding
389
355
        # This test requires that 'run_bzr' uses the current
390
356
        # bzrlib, because we override user_encoding, and expect
391
357
        # it to be used
392
358
        try:
393
 
            osutils._cached_user_encoding = 'ascii'
 
359
            bzrlib.user_encoding = 'ascii'
394
360
            # We should be able to handle any encoding
395
361
            out, err = bzr('log', encoding=encoding)
396
362
            if not fail:
401
367
            else:
402
368
                self.assertNotEqual(-1, out.find('Message with ?'))
403
369
        finally:
404
 
            osutils._cached_user_encoding = old_encoding
 
370
            bzrlib.user_encoding = old_encoding
405
371
 
406
372
    def test_log_handles_encoding(self):
407
373
        self.create_branch()
417
383
 
418
384
    def test_stdout_encoding(self):
419
385
        bzr = self.run_bzr
420
 
        osutils._cached_user_encoding = "cp1251"
 
386
        bzrlib.user_encoding = "cp1251"
421
387
 
422
388
        bzr('init')
423
389
        self.build_tree(['a'])