Added (optional) opaque support to DigestAuth
Reviewed in http://codereview.appspot.com/4661044/
diff --git a/python2/httplib2test.py b/python2/httplib2test.py
index 1efcd3c..bb9a32c 100755
--- a/python2/httplib2test.py
+++ b/python2/httplib2test.py
@@ -1470,6 +1470,21 @@
working_request = 'authorization: Digest username="joe", realm="myrealm", nonce="Ygk86AsKBAA=3516200d37f9a3230352fde99977bd6d472d4306", uri="/projects/httplib2/test/digest/", algorithm=MD5, response="97ed129401f7cdc60e5db58a80f3ea8b", qop=auth, nc=00000001, cnonce="33033375ec278a46"'
self.assertEqual(our_request, working_request)
+ def testDigestObjectWithOpaque(self):
+ credentials = ('joe', 'password')
+ host = None
+ request_uri = '/projects/httplib2/test/digest/'
+ headers = {}
+ response = {
+ 'www-authenticate': 'Digest realm="myrealm", nonce="Ygk86AsKBAA=3516200d37f9a3230352fde99977bd6d472d4306", algorithm=MD5, qop="auth", opaque="atestopaque"'
+ }
+ content = ""
+
+ d = httplib2.DigestAuthentication(credentials, host, request_uri, headers, response, content, None)
+ d.request("GET", request_uri, headers, content, cnonce="33033375ec278a46")
+ our_request = "authorization: %s" % headers['authorization']
+ working_request = 'authorization: Digest username="joe", realm="myrealm", nonce="Ygk86AsKBAA=3516200d37f9a3230352fde99977bd6d472d4306", uri="/projects/httplib2/test/digest/", algorithm=MD5, response="97ed129401f7cdc60e5db58a80f3ea8b", qop=auth, nc=00000001, cnonce="33033375ec278a46", opaque="atestopaque"'
+ self.assertEqual(our_request, working_request)
def testDigestObjectStale(self):
credentials = ('joe', 'password')