diff options
author | Marc Abramowitz <marc@marc-abramowitz.com> | 2015-04-30 16:42:17 -0700 |
---|---|---|
committer | Marc Abramowitz <marc@marc-abramowitz.com> | 2015-04-30 16:42:17 -0700 |
commit | 12a3f1f4cfa7f88478dc1b0e949fcc095b9fc804 (patch) | |
tree | ddb8079523d846f0b074437fc33fa5e28b508183 /tests/test_session.py | |
download | paste-git-eliminate_cgi_parse_qsl.tar.gz |
Replace cgi.parse_qsl w/ six.moves.urllib.parse.parse_sqleliminate_cgi_parse_qsl_2eliminate_cgi_parse_qsl
because `cgi.parse_qsl` is deprecated, according to
https://docs.python.org/2/library/cgi.html#cgi.parse_qsl
Diffstat (limited to 'tests/test_session.py')
-rw-r--r-- | tests/test_session.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/tests/test_session.py b/tests/test_session.py new file mode 100644 index 0000000..b67bda5 --- /dev/null +++ b/tests/test_session.py @@ -0,0 +1,56 @@ +from paste.session import SessionMiddleware +from paste.fixture import TestApp +import six + +info = [] + +def wsgi_app(environ, start_response): + pi = environ.get('PATH_INFO', '') + if pi in ('/get1', '/get2'): + if pi == '/get1': + sess = environ['paste.session.factory']() + start_response('200 OK', [('content-type', 'text/plain')]) + if pi == '/get2': + sess = environ['paste.session.factory']() + if 'info' in sess: + body = str(sess['info']) + if six.PY3: + body = body.encode('utf8') + return [body] + else: + return [b'no-info'] + if pi in ('/put1', '/put2'): + if pi == '/put1': + sess = environ['paste.session.factory']() + sess['info'] = info[0] + start_response('200 OK', [('content-type', 'text/plain')]) + if pi == '/put2': + sess = environ['paste.session.factory']() + sess['info'] = info[0] + return [b'foo'] + +wsgi_app = SessionMiddleware(wsgi_app) + +def test_app1(): + app = TestApp(wsgi_app) + res = app.get('/get1') + assert res.body == b'no-info' + res = app.get('/get2') + assert res.body ==b'no-info' + info[:] = ['test'] + res = app.get('/put1') + res = app.get('/get1') + assert res.body == b'test' + res = app.get('/get2') + assert res.body == b'test' + +def test_app2(): + app = TestApp(wsgi_app) + info[:] = ['fluff'] + res = app.get('/put2') + res = app.get('/get1') + assert res.body == b'fluff' + res = app.get('/get2') + assert res.body == b'fluff' + + |