~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

  • Committer: Vincent Ladeuil
  • Date: 2009-05-04 14:48:21 UTC
  • mto: (4349.1.1 integration)
  • mto: This revision was merged to the branch mainline in revision 4350.
  • Revision ID: v.ladeuil+lp@free.fr-20090504144821-39dvqkikmd3zqkdg
Handle servers proposing several authentication schemes.

* bzrlib/transport/http/_urllib2_wrappers.py:
(AbstractAuthHandler.auth_required): Several schemes can be
proposed by the server, try to match each one in turn.
(BasicAuthHandler.auth_match): Delete dead code.

* bzrlib/tests/test_http.py:
(load_tests): Separate proxy and http authentication tests as they
require different server setups.
(TestAuth.create_transport_readonly_server): Simplified by using
parameter provided by load_tests.
(TestAuth.test_changing_nonce): Adapt to new parametrization.
(TestProxyAuth.create_transport_readonly_server): Deleted.

* bzrlib/tests/http_utils.py:
(DigestAndBasicAuthRequestHandler, HTTPBasicAndDigestAuthServer,
ProxyBasicAndDigestAuthServer): Add a test server proposing both
basic and digest auth schemes but accepting only digest as valid.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2007-2010 Canonical Ltd
 
1
# Copyright (C) 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
17
17
"""Tests for the 'check' CLI command."""
18
18
 
19
19
from bzrlib.tests import ChrootedTestCase
20
 
from bzrlib.tests import TestCaseWithTransport
21
 
 
22
 
 
23
 
class TestCheck(TestCaseWithTransport):
 
20
from bzrlib.tests.blackbox import ExternalBase
 
21
 
 
22
 
 
23
class TestCheck(ExternalBase):
24
24
 
25
25
    def test_check_no_tree(self):
26
26
        self.make_branch('.')
34
34
        tree = self.make_branch_and_tree('.')
35
35
        tree.commit('hallelujah')
36
36
        out, err = self.run_bzr('check')
37
 
        self.assertContainsRe(err, r"Checking working tree at '.*'\.\n")
38
 
        self.assertContainsRe(err, r"Checking repository at '.*'\.\n")
39
 
        # the root directory may be in the texts for rich root formats
40
 
        self.assertContainsRe(err, r"checked repository.*\n"
 
37
        self.assertContainsRe(err, r"^Checking working tree at '.*'\.\n"
 
38
                                   r"Checking repository at '.*'\.\n"
 
39
                                   r"checked repository.*\n"
41
40
                                   r"     1 revisions\n"
42
 
                                   r"     [01] file-ids\n"
43
 
                                   )
44
 
        self.assertContainsRe(err, r"Checking branch at '.*'\.\n")
45
 
        self.assertContainsRe(err, r"checked branch.*")
 
41
                                   r"     0 file-ids\n"
 
42
                                   r"     0 unique file texts\n"
 
43
                                   r"     0 repeated file texts\n"
 
44
                                   r"     0 unreferenced text versions\n"
 
45
                                   r"Checking branch at '.*'\.\n"
 
46
                                   r"checked branch.*\n$")
46
47
 
47
48
    def test_check_branch(self):
48
49
        tree = self.make_branch_and_tree('.')
49
50
        tree.commit('foo')
50
51
        out, err = self.run_bzr('check --branch')
51
52
        self.assertContainsRe(err, r"^Checking branch at '.*'\.\n"
52
 
                                   r"checked branch.*")
 
53
                                   r"checked branch.*\n$")
53
54
 
54
55
    def test_check_repository(self):
55
56
        tree = self.make_branch_and_tree('.')
58
59
        self.assertContainsRe(err, r"^Checking repository at '.*'\.\n"
59
60
                                   r"checked repository.*\n"
60
61
                                   r"     1 revisions\n"
61
 
                                   r"     [01] file-ids\n"
62
 
                                   )
 
62
                                   r"     0 file-ids\n"
 
63
                                   r"     0 unique file texts\n"
 
64
                                   r"     0 repeated file texts\n"
 
65
                                   r"     0 unreferenced text versions$")
63
66
 
64
67
    def test_check_tree(self):
65
68
        tree = self.make_branch_and_tree('.')
73
76
        out, err = self.run_bzr('check --tree --branch')
74
77
        self.assertContainsRe(err, r"^Checking working tree at '.*'\.\n"
75
78
                                   r"Checking branch at '.*'\.\n"
76
 
                                   r"checked branch.*")
 
79
                                   r"checked branch.*\n$")
77
80
 
78
81
    def test_check_missing_tree(self):
79
82
        branch = self.make_branch('.')
84
87
        branch = self.make_branch('.')
85
88
        out, err = self.run_bzr('check --tree --branch')
86
89
        self.assertContainsRe(err,
 
90
            r"^No working tree found at specified location\.\n"
87
91
            r"Checking branch at '.*'\.\n"
88
 
            r"No working tree found at specified location\.\n"
89
 
            r"checked branch.*")
 
92
            r"checked branch.*\n$")
90
93
 
91
94
    def test_check_missing_branch_in_shared_repo(self):
92
95
        self.make_repository('shared', shared=True)