Skip to content

Commit 37cd746

Browse files
Added transport method to server class
1 parent a1e232f commit 37cd746

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

socketio/server.py

+10
Original file line numberDiff line numberDiff line change
@@ -278,6 +278,16 @@ def disconnect(self, sid, namespace=None):
278278
self._trigger_event('disconnect', namespace, sid)
279279
self.manager.disconnect(sid, namespace=namespace)
280280

281+
def transport(self, sid):
282+
"""Return the name of the transport used by the client.
283+
284+
The two possible values returned by this function are ``'polling'``
285+
and ``'websocket'``.
286+
287+
:param sid: The session of the client.
288+
"""
289+
return self.eio.transport(sid)
290+
281291
def handle_request(self, environ, start_response):
282292
"""Handle an HTTP request from the client.
283293

tests/test_server.py

+7
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,13 @@ def test_emit_internal_binary(self, eio):
144144
s._emit_internal('123', u'my event', b'my binary data')
145145
self.assertEqual(s.eio.send.call_count, 2)
146146

147+
def test_transport(self, eio):
148+
s = server.Server()
149+
s.eio.transport = mock.MagicMock(return_value='polling')
150+
s._handle_eio_connect('foo', 'environ')
151+
self.assertEqual(s.transport('foo'), 'polling')
152+
s.eio.transport.assert_called_once_with('foo')
153+
147154
def test_handle_connect(self, eio):
148155
mgr = mock.MagicMock()
149156
s = server.Server(client_manager_class=mgr)

0 commit comments

Comments
 (0)