~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_generate_ids.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) 2006, 2007, 2009, 2011 Canonical Ltd
 
1
# Copyright (C) 2006 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
16
16
 
17
17
"""Tests for bzrlib/generate_ids.py"""
18
18
 
 
19
import re
 
20
 
19
21
from bzrlib import (
20
22
    generate_ids,
21
23
    tests,
62
64
        # Test both case squashing and length restriction
63
65
        fid = gen_file_id('A'*50 + '.txt')
64
66
        self.assertStartsWith(fid, 'a'*20 + '-')
65
 
        self.assertTrue(len(fid) < 60)
 
67
        self.failUnless(len(fid) < 60)
66
68
 
67
69
        # restricting length happens after the other actions, so
68
70
        # we preserve as much as possible
69
71
        fid = gen_file_id('\xe5\xb5..aBcd\tefGhijKLMnop\tqrstuvwxyz')
70
72
        self.assertStartsWith(fid, 'abcdefghijklmnopqrst-')
71
 
        self.assertTrue(len(fid) < 60)
 
73
        self.failUnless(len(fid) < 60)
72
74
 
73
75
    def test_file_ids_are_ascii(self):
74
76
        tail = r'-\d{14}-[a-z0-9]{16}-\d+'