Skip to content

Commit

Permalink
Add missing to argument to namespace emit() and send() calls (Fixes #810
Browse files Browse the repository at this point in the history
)
  • Loading branch information
miguelgrinberg committed Oct 24, 2021
1 parent 8c15b77 commit ed08a01
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 18 deletions.
11 changes: 6 additions & 5 deletions src/socketio/asyncio_namespace.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ async def trigger_event(self, event, *args):
ret = handler(*args)
return ret

async def emit(self, event, data=None, room=None, skip_sid=None,
async def emit(self, event, data=None, to=None, room=None, skip_sid=None,
namespace=None, callback=None):
"""Emit a custom event to one or more connected clients.
Expand All @@ -51,13 +51,13 @@ async def emit(self, event, data=None, room=None, skip_sid=None,
Note: this method is a coroutine.
"""
return await self.server.emit(event, data=data, room=room,
return await self.server.emit(event, data=data, to=to, room=room,
skip_sid=skip_sid,
namespace=namespace or self.namespace,
callback=callback)

async def send(self, data, room=None, skip_sid=None, namespace=None,
callback=None):
async def send(self, data, to=None, room=None, skip_sid=None,
namespace=None, callback=None):
"""Send a message to one or more connected clients.
The only difference with the :func:`socketio.Server.send` method is
Expand All @@ -66,7 +66,8 @@ async def send(self, data, room=None, skip_sid=None, namespace=None,
Note: this method is a coroutine.
"""
return await self.server.send(data, room=room, skip_sid=skip_sid,
return await self.server.send(data, to=to, room=room,
skip_sid=skip_sid,
namespace=namespace or self.namespace,
callback=callback)

Expand Down
11 changes: 6 additions & 5 deletions src/socketio/namespace.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,27 +37,28 @@ def __init__(self, namespace=None):
def _set_server(self, server):
self.server = server

def emit(self, event, data=None, room=None, skip_sid=None, namespace=None,
callback=None):
def emit(self, event, data=None, to=None, room=None, skip_sid=None,
namespace=None, callback=None):
"""Emit a custom event to one or more connected clients.
The only difference with the :func:`socketio.Server.emit` method is
that when the ``namespace`` argument is not given the namespace
associated with the class is used.
"""
return self.server.emit(event, data=data, room=room, skip_sid=skip_sid,
return self.server.emit(event, data=data, to=to, room=room,
skip_sid=skip_sid,
namespace=namespace or self.namespace,
callback=callback)

def send(self, data, room=None, skip_sid=None, namespace=None,
def send(self, data, to=None, room=None, skip_sid=None, namespace=None,
callback=None):
"""Send a message to one or more connected clients.
The only difference with the :func:`socketio.Server.send` method is
that when the ``namespace`` argument is not given the namespace
associated with the class is used.
"""
return self.server.send(data, room=room, skip_sid=skip_sid,
return self.server.send(data, to=to, room=room, skip_sid=skip_sid,
namespace=namespace or self.namespace,
callback=callback)

Expand Down
12 changes: 8 additions & 4 deletions tests/asyncio/test_asyncio_namespace.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,13 +93,14 @@ def test_emit(self):
ns._set_server(mock_server)
_run(
ns.emit(
'ev', data='data', room='room', skip_sid='skip', callback='cb'
'ev', data='data', to='room', skip_sid='skip', callback='cb'
)
)
ns.server.emit.mock.assert_called_with(
'ev',
data='data',
room='room',
to='room',
room=None,
skip_sid='skip',
namespace='/foo',
callback='cb',
Expand All @@ -117,6 +118,7 @@ def test_emit(self):
ns.server.emit.mock.assert_called_with(
'ev',
data='data',
to=None,
room='room',
skip_sid='skip',
namespace='/bar',
Expand All @@ -128,10 +130,11 @@ def test_send(self):
mock_server = mock.MagicMock()
mock_server.send = AsyncMock()
ns._set_server(mock_server)
_run(ns.send(data='data', room='room', skip_sid='skip', callback='cb'))
_run(ns.send(data='data', to='room', skip_sid='skip', callback='cb'))
ns.server.send.mock.assert_called_with(
'data',
room='room',
to='room',
room=None,
skip_sid='skip',
namespace='/foo',
callback='cb',
Expand All @@ -147,6 +150,7 @@ def test_send(self):
)
ns.server.send.mock.assert_called_with(
'data',
to=None,
room='room',
skip_sid='skip',
namespace='/bar',
Expand Down
12 changes: 8 additions & 4 deletions tests/common/test_namespace.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,12 @@ def on_custom_message(self, sid, data):
def test_emit(self):
ns = namespace.Namespace('/foo')
ns._set_server(mock.MagicMock())
ns.emit('ev', data='data', room='room', skip_sid='skip', callback='cb')
ns.emit('ev', data='data', to='room', skip_sid='skip', callback='cb')
ns.server.emit.assert_called_with(
'ev',
data='data',
room='room',
to='room',
room=None,
skip_sid='skip',
namespace='/foo',
callback='cb',
Expand All @@ -76,6 +77,7 @@ def test_emit(self):
ns.server.emit.assert_called_with(
'ev',
data='data',
to=None,
room='room',
skip_sid='skip',
namespace='/bar',
Expand All @@ -85,10 +87,11 @@ def test_emit(self):
def test_send(self):
ns = namespace.Namespace('/foo')
ns._set_server(mock.MagicMock())
ns.send(data='data', room='room', skip_sid='skip', callback='cb')
ns.send(data='data', to='room', skip_sid='skip', callback='cb')
ns.server.send.assert_called_with(
'data',
room='room',
to='room',
room=None,
skip_sid='skip',
namespace='/foo',
callback='cb',
Expand All @@ -102,6 +105,7 @@ def test_send(self):
)
ns.server.send.assert_called_with(
'data',
to=None,
room='room',
skip_sid='skip',
namespace='/bar',
Expand Down

0 comments on commit ed08a01

Please sign in to comment.