~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_http.py

[merge] James Henstridge: Set Agent string in http headers, add tests for it.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
# (C) 2005 Canonical
2
2
 
 
3
import bzrlib
3
4
from bzrlib.tests import TestCase
 
5
from bzrlib.tests.HTTPTestUtil import TestCaseWithWebserver
4
6
from bzrlib.transport.http import HttpTransport, extract_auth
5
7
 
6
8
class FakeManager (object):
10
12
    def add_password(self, realm, host, username, password):
11
13
        self.credentials.append([realm, host, username, password])
12
14
 
13
 
        
 
15
 
14
16
class TestHttpUrls(TestCase):
15
17
    def test_url_parsing(self):
16
18
        f = FakeManager()
51
53
        eq = self.assertEqualDiff
52
54
        eq(t.abspath('.bzr/tree-version'),
53
55
           'http://bzr.ozlabs.org/.bzr/tree-version')
 
56
 
 
57
 
 
58
class TestHttpConnections(TestCaseWithWebserver):
 
59
 
 
60
    def setUp(self):
 
61
        super(TestHttpConnections, self).setUp()
 
62
        self.build_tree(['xxx', 'foo/', 'foo/bar'], line_endings='binary')
 
63
 
 
64
    def test_http_has(self):
 
65
        t = HttpTransport(self.server.get_url())
 
66
        self.assertEqual(t.has('foo/bar'), True)
 
67
        self.assertEqual(len(self.server.logs), 1)
 
68
        self.assertTrue(self.server.logs[0].endswith(
 
69
            '"HEAD /foo/bar HTTP/1.1" 200 - "-" "bzr/%s"'
 
70
            % bzrlib.__version__))
 
71
 
 
72
        self.assertEqual(t.has('not-found'), False)
 
73
        self.assertTrue(self.server.logs[-1].endswith(
 
74
            '"HEAD /not-found HTTP/1.1" 404 - "-" "bzr/%s"'
 
75
            % bzrlib.__version__))
 
76
 
 
77
    def test_http_get(self):
 
78
        t = HttpTransport(self.server.get_url())
 
79
        fp = t.get('foo/bar')
 
80
        self.assertEqualDiff(
 
81
            fp.read(),
 
82
            'contents of foo/bar\n')
 
83
        self.assertEqual(len(self.server.logs), 1)
 
84
        self.assertTrue(self.server.logs[0].endswith(
 
85
            '"GET /foo/bar HTTP/1.1" 200 - "-" "bzr/%s"' % bzrlib.__version__))