def test_auth(): user, pwd = 'marc', 'secret' basic = to_unicode(base64.b64encode(to_bytes('%s:%s' % (user, pwd)))) env = dict(copy.deepcopy(env1)) r = Request(env) assert r.authorization == None env['HTTP_AUTHORIZATION'] = 'basic %s' % basic r = Request(env) assert r.authorization == (user, pwd)
def test_wsgiheaders(): env = { 'REQUEST_METHOD': 'POST', 'SCRIPT_NAME': '/foo', 'PATH_INFO': '/bar', 'QUERY_STRING': 'a=1&b=2', 'SERVER_NAME': 'test.flagon.org', 'SERVER_PORT': '80', 'HTTP_HOST': 'test.flagon.org', 'SERVER_PROTOCOL': 'http', 'CONTENT_TYPE': 'text/plain; charset=utf-8', 'CONTENT_LENGTH': '0', 'wsgi.url_scheme': 'http', 'HTTP_X_FORWARDED_FOR': '5.5.5.5', } user, pwd = 'marc', 'secret' basic = to_unicode(base64.b64encode(to_bytes('%s:%s' % (user, pwd)))) env['HTTP_AUTHORIZATION'] = 'basic %s' % basic env['HTTP_COOKIE'] = 'a=a; a=b' w = WSGIHeaders(env) assert w.raw('authorization') == 'basic %s' % basic assert w.raw('content_type') == 'text/plain; charset=utf-8' assert w.raw('cookie') == 'a=a; a=b' assert w.raw('range') == None assert w['authorization'] == 'basic %s' % basic assert w['content_type'] == 'text/plain; charset=utf-8' with pytest.raises(TypeError): w['content_type'] = 'text/plain' with pytest.raises(TypeError): del w['range'] assert len(w) == len(w.keys()) assert len(w) == 6