aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_http_auth.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_http_auth.py')
-rw-r--r--test/test_http_auth.py25
1 files changed, 24 insertions, 1 deletions
diff --git a/test/test_http_auth.py b/test/test_http_auth.py
index cae69f5e..8238d4ca 100644
--- a/test/test_http_auth.py
+++ b/test/test_http_auth.py
@@ -1,5 +1,6 @@
import binascii, cStringIO
from netlib import odict, http_auth, http
+import mock
import tutils
class TestPassManNonAnon:
@@ -17,7 +18,7 @@ class TestPassManHtpasswd:
tutils.raises("invalid htpasswd", http_auth.PassManHtpasswd, s)
def test_simple(self):
- f = open(tutils.test_data.path("data/htpasswd"))
+ f = open(tutils.test_data.path("data/htpasswd"),"rb")
pm = http_auth.PassManHtpasswd(f)
vals = ("basic", "test", "test")
@@ -79,3 +80,25 @@ class TestBasicProxyAuth:
hdrs[ba.AUTH_HEADER] = [http.assemble_http_basic_auth(*vals)]
assert not ba.authenticate(hdrs)
+
+class Bunch: pass
+
+class TestAuthAction:
+ def test_nonanonymous(self):
+ m = Bunch()
+ aa = http_auth.NonanonymousAuthAction(None, None)
+ aa(None, m, None, None)
+ assert m.authenticator
+
+ def test_singleuser(self):
+ m = Bunch()
+ aa = http_auth.SingleuserAuthAction(None, None)
+ aa(None, m, "foo:bar", None)
+ assert m.authenticator
+ tutils.raises("invalid", aa, None, m, "foo", None)
+
+ def test_httppasswd(self):
+ m = Bunch()
+ aa = http_auth.HtpasswdAuthAction(None, None)
+ aa(None, m, tutils.test_data.path("data/htpasswd"), None)
+ assert m.authenticator