~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

  • Committer: v.ladeuil+lp at free
  • Date: 2007-05-15 17:40:32 UTC
  • mto: (2485.8.44 bzr.connection.sharing)
  • mto: This revision was merged to the branch mainline in revision 2646.
  • Revision ID: v.ladeuil+lp@free.fr-20070515174032-qzdkangpv29l9e7g
Add a test that check that init connect only once. It fails.

* __init__.py:
(test_suite): Register the new test class.

* test_init.py: 
(InstrumentedTransport): A transport that can track connections.
(TransportHooks): Transport specific hooks.
(TestInit): Iniit command behavior tests.

* ftp.py:
(FtpTransport.__init__): Mark place that need fixing regarding
transport connection sharing

* builtins.py:
(cmd_init.run): Mark places that need fixing regarding transport
connection sharing.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2006, 2007, 2009, 2010, 2011 Canonical Ltd
 
1
# Copyright (C) 2006, 2007 Canonical Ltd
2
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
12
12
#
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, write to the Free Software
15
 
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
16
 
17
17
"""Blackbox tests for -D debug options"""
18
18
 
19
19
import os
20
20
import signal
 
21
import subprocess
21
22
import sys
22
23
import time
23
24
 
24
 
from bzrlib import debug, tests
25
 
 
26
 
 
27
 
class TestDebugOption(tests.TestCaseInTempDir):
 
25
from bzrlib.tests import TestCase, TestSkipped
 
26
 
 
27
class TestDebugOption(TestCase):
28
28
 
29
29
    def test_dash_derror(self):
30
30
        """With -Derror, tracebacks are shown even for user errors"""
31
 
        out, err = self.run_bzr("-Derror branch nonexistent-location",
32
 
                                retcode=3)
 
31
        out, err = self.run_bzr("-Derror", "branch", "nonexistent-location",
 
32
                retcode=3)
33
33
        # error output should contain a traceback; we used to look for code in
34
34
        # here but it may be missing if the source is not in sync with the
35
35
        # pyc file.
36
36
        self.assertContainsRe(err, "Traceback \\(most recent call last\\)")
37
 
 
38
 
    def test_dash_dlock(self):
39
 
        # With -Dlock, locking and unlocking is recorded into the log
40
 
        self.run_bzr("-Dlock init foo")
41
 
        self.assertContainsRe(self.get_log(), "lock_write")
42
 
 
43
 
 
44
 
class TestDebugBytes(tests.TestCaseWithTransport):
45
 
 
46
 
    def test_bytes_reports_activity(self):
47
 
        tree = self.make_branch_and_tree('tree')
48
 
        self.build_tree(['tree/one'])
49
 
        tree.add('one')
50
 
        rev_id = tree.commit('first')
51
 
        remote_trans = self.make_smart_server('.')
52
 
        # I would like to avoid run_bzr_subprocess here, but we need it to be
53
 
        # connected to a real TextUIFactory. The NullProgressView always
54
 
        # ignores transport activity.
55
 
        env = {'BZR_PROGRESS_BAR': 'text'}
56
 
        out, err = self.run_bzr_subprocess('branch -Dbytes %s/tree target'
57
 
                                           % (remote_trans.base,),
58
 
                                           env_changes=env)
59
 
        self.assertContainsRe(err, 'Branched 1 revision')
60
 
        self.assertContainsRe(err, 'Transferred:.*kB')