Skip to content

Commit 940d262

Browse files
allow event names with hyphens
Fixes miguelgrinberg#51
1 parent 923ded0 commit 940d262

File tree

3 files changed

+11
-6
lines changed

3 files changed

+11
-6
lines changed

socketio/server.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,6 @@ def message_handler(sid, msg):
149149
client's acknowledgement callback function if it exists. The
150150
``'disconnect'`` handler does not take a second argument.
151151
"""
152-
if '-' in event:
153-
raise ValueError('event names cannot contain hypens')
154152
namespace = namespace or '/'
155153

156154
def set_handler(handler):

tests/test_packet.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,17 @@ def test_decode_namespace_with_hyphens(self):
117117
self.assertEqual(pkt.namespace, '/b-a-r')
118118
self.assertEqual(pkt.encode(), '2/b-a-r,["foo"]')
119119

120+
def test_encode_event_with_hyphens(self):
121+
pkt = packet.Packet(packet_type=packet.EVENT,
122+
data=[six.text_type('f-o-o')])
123+
self.assertEqual(pkt.namespace, None)
124+
self.assertEqual(pkt.encode(), '2["f-o-o"]')
125+
126+
def test_decode_event_with_hyphens(self):
127+
pkt = packet.Packet(encoded_packet='2["f-o-o"]')
128+
self.assertEqual(pkt.namespace, None)
129+
self.assertEqual(pkt.encode(), '2["f-o-o"]')
130+
120131
def test_encode_id(self):
121132
pkt = packet.Packet(packet_type=packet.EVENT,
122133
data=[six.text_type('foo')], id=123)

tests/test_server.py

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,6 @@ def bar():
4848
self.assertEqual(s.handlers['/']['disconnect'], bar)
4949
self.assertEqual(s.handlers['/foo']['disconnect'], bar)
5050

51-
def test_on_bad_event_name(self, eio):
52-
s = server.Server()
53-
self.assertRaises(ValueError, s.on, 'two-words')
54-
5551
def test_emit(self, eio):
5652
mgr = mock.MagicMock()
5753
s = server.Server(client_manager=mgr)

0 commit comments

Comments
 (0)