From f708fe0162b03d8dd0719baaac00480690ca22d7 Mon Sep 17 00:00:00 2001 From: Ben Darnell Date: Wed, 2 Jul 2014 22:00:14 -0400 Subject: [PATCH] Add tests for both binary and unicode messages in websockets. --- tornado/test/websocket_test.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/tornado/test/websocket_test.py b/tornado/test/websocket_test.py index 7b3c34ce..177abc3b 100644 --- a/tornado/test/websocket_test.py +++ b/tornado/test/websocket_test.py @@ -8,6 +8,7 @@ from tornado.log import gen_log from tornado.testing import AsyncHTTPTestCase, gen_test, bind_unused_port, ExpectLog from tornado.test.util import unittest from tornado.web import Application, RequestHandler +from tornado.util import u try: import tornado.websocket @@ -107,6 +108,26 @@ class WebSocketTest(AsyncHTTPTestCase): ws.close() self.wait() + @gen_test + def test_binary_message(self): + ws = yield websocket_connect( + 'ws://localhost:%d/echo' % self.get_http_port()) + ws.write_message(b'hello \xe9', binary=True) + response = yield ws.read_message() + self.assertEqual(response, b'hello \xe9') + ws.close() + yield self.close_future + + @gen_test + def test_unicode_message(self): + ws = yield websocket_connect( + 'ws://localhost:%d/echo' % self.get_http_port()) + ws.write_message(u('hello \u00e9')) + response = yield ws.read_message() + self.assertEqual(response, u('hello \u00e9')) + ws.close() + yield self.close_future + @gen_test def test_websocket_http_fail(self): with self.assertRaises(HTTPError) as cm: