summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMarc Abramowitz <marc@marc-abramowitz.com>2015-04-27 16:52:56 -0700
committerMarc Abramowitz <marc@marc-abramowitz.com>2015-04-27 16:52:56 -0700
commit317c5ab5492dc2f0c02f4a284b6603d8ae768fcb (patch)
tree40460a53680365b56ee9c43eb954f346da2637a2 /tests
parent800e8b80e8f7d6b8a8a17061b3258eace6f6f89d (diff)
downloadpaste-317c5ab5492dc2f0c02f4a284b6603d8ae768fcb.tar.gz
Add tests/test_httpserver.py
which contains a test for the issue in BB-4, where the WSGI environment has strings with commas in them that don't belong. See issue #4.
Diffstat (limited to 'tests')
-rw-r--r--tests/test_httpserver.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/test_httpserver.py b/tests/test_httpserver.py
new file mode 100644
index 0000000..4579802
--- /dev/null
+++ b/tests/test_httpserver.py
@@ -0,0 +1,29 @@
+import mimetools
+
+from paste.httpserver import WSGIHandler
+from six.moves import StringIO
+
+
+class MockServer(object):
+ server_address = ('127.0.0.1', 80)
+
+
+class MockSocket(object):
+ def makefile(self, mode, bufsize):
+ return StringIO()
+
+
+def test_environ():
+ mock_socket = MockSocket()
+ mock_client_address = '1.2.3.4'
+ mock_server = MockServer()
+
+ wsgi_handler = WSGIHandler(mock_socket, mock_client_address, mock_server)
+ wsgi_handler.command = 'GET'
+ wsgi_handler.path = '/path'
+ wsgi_handler.request_version = 'HTTP/1.0'
+ wsgi_handler.headers = mimetools.Message(StringIO('Host: mywebsite'))
+
+ wsgi_handler.wsgi_setup()
+
+ assert wsgi_handler.wsgi_environ['HTTP_HOST'] == 'mywebsite'