예제 #1
0
 def test_wsgi_routing(self):
     mock_wsgi_app = mock.MagicMock()
     mock_eio_app = 'foo'
     m = middleware.Middleware(mock_eio_app, mock_wsgi_app)
     environ = {'PATH_INFO': '/foo'}
     start_response = "foo"
     m(environ, start_response)
     mock_wsgi_app.assert_called_once_with(environ, start_response)
예제 #2
0
 def test_gunicorn_socket(self):
     mock_wsgi_app = None
     mock_eio_app = mock.Mock()
     m = middleware.Middleware(mock_eio_app, mock_wsgi_app)
     environ = {'gunicorn.socket': 123, 'PATH_INFO': '/foo/bar'}
     start_response = mock.MagicMock()
     m(environ, start_response)
     self.assertIn('eventlet.input', environ)
     self.assertEqual(environ['eventlet.input'].get_socket(), 123)
예제 #3
0
 def test_404(self):
     mock_wsgi_app = None
     mock_eio_app = mock.Mock()
     m = middleware.Middleware(mock_eio_app, mock_wsgi_app)
     environ = {'PATH_INFO': '/foo/bar'}
     start_response = mock.MagicMock()
     r = m(environ, start_response)
     self.assertEqual(r, ['Not Found'])
     start_response.assert_called_once_with(
         "404 Not Found", [('Content-type', 'text/plain')])
예제 #4
0
 def test_eio_routing(self):
     mock_wsgi_app = 'foo'
     mock_eio_app = mock.Mock()
     mock_eio_app.handle_request = mock.MagicMock()
     m = middleware.Middleware(mock_eio_app, mock_wsgi_app)
     environ = {'PATH_INFO': '/engine.io/'}
     start_response = "foo"
     m(environ, start_response)
     mock_eio_app.handle_request.assert_called_once_with(
         environ, start_response)
예제 #5
0
 def test_custom_eio_path_trailing_slash(self):
     mock_wsgi_app = None
     mock_eio_app = mock.Mock()
     mock_eio_app.handle_request = mock.MagicMock()
     m = middleware.Middleware(mock_eio_app,
                               mock_wsgi_app,
                               engineio_path='foo/')
     environ = {'PATH_INFO': '/foo/'}
     start_response = mock.MagicMock()
     m(environ, start_response)
     mock_eio_app.handle_request.assert_called_once_with(
         environ, start_response)
예제 #6
0
    def test_custom_eio_path(self):
        mock_wsgi_app = None
        mock_eio_app = mock.Mock()
        mock_eio_app.handle_request = mock.MagicMock()
        m = middleware.Middleware(mock_eio_app,
                                  mock_wsgi_app,
                                  engineio_path='foo')
        environ = {'PATH_INFO': '/engine.io/'}
        start_response = mock.MagicMock()
        r = m(environ, start_response)
        self.assertEqual(r, ['Not Found'])
        start_response.assert_called_once_with(
            "404 Not Found", [('Content-type', 'text/plain')])

        environ = {'PATH_INFO': '/foo/'}
        m(environ, start_response)
        mock_eio_app.handle_request.assert_called_once_with(
            environ, start_response)