diff options
Diffstat (limited to 'websocket')
-rw-r--r-- | websocket/__init__.py | 2 | ||||
-rw-r--r-- | websocket/_app.py | 21 | ||||
-rw-r--r-- | websocket/tests/test_websocket.py | 22 |
3 files changed, 11 insertions, 34 deletions
diff --git a/websocket/__init__.py b/websocket/__init__.py index 18e5892..e0af553 100644 --- a/websocket/__init__.py +++ b/websocket/__init__.py @@ -26,4 +26,4 @@ from ._exceptions import * from ._logging import * from ._socket import * -__version__ = "0.50.0" +__version__ = "0.51.0" diff --git a/websocket/_app.py b/websocket/_app.py index 90244b7..970f3bd 100644 --- a/websocket/_app.py +++ b/websocket/_app.py @@ -127,16 +127,16 @@ class WebSocketApp(object): self.header = header if header is not None else [] self.cookie = cookie - self.on_open = on_open or getattr(self, 'on_open', None) - self.on_message = on_message or getattr(self, 'on_message', None) - self.on_data = on_data or getattr(self, 'on_data', None) - self.on_error = on_error or getattr(self, 'on_error', None) - self.on_close = on_close or getattr(self, 'on_close', None) - self.on_ping = on_ping or getattr(self, 'on_ping', None) - self.on_pong = on_pong or getattr(self, 'on_pong', None) - self.on_cont_message = on_cont_message or getattr(self, 'on_cont_message', None) - self.get_mask_key = get_mask_key or getattr(self, 'get_mask_key', None) + self.on_open = on_open + self.on_message = on_message + self.on_data = on_data + self.on_error = on_error + self.on_close = on_close + self.on_ping = on_ping + self.on_pong = on_pong + self.on_cont_message = on_cont_message self.keep_running = False + self.get_mask_key = get_mask_key self.sock = None self.last_ping_tm = 0 self.last_pong_tm = 0 @@ -311,7 +311,6 @@ class WebSocketApp(object): def _get_close_args(self, data): """ this functions extracts the code, reason from the close body if they exists, and if the self.on_close except three arguments """ - import inspect # if the on_close callback is "old", just return empty list if sys.version_info < (3, 0): if not self.on_close or len(inspect.getargspec(self.on_close).args) != 3: @@ -330,7 +329,7 @@ class WebSocketApp(object): def _callback(self, callback, *args): if callback: try: - if inspect.ismethod(callback) and isinstance(callback.__self__, WebSocketApp): + if inspect.ismethod(callback): callback(*args) else: callback(self, *args) diff --git a/websocket/tests/test_websocket.py b/websocket/tests/test_websocket.py index 2fec954..f49a893 100644 --- a/websocket/tests/test_websocket.py +++ b/websocket/tests/test_websocket.py @@ -542,28 +542,6 @@ class WebSocketAppTest(unittest.TestCase): # Note: We can't use 'is' for comparing the functions directly, need to use 'id'. # self.assertEqual(WebSocketAppTest.get_mask_key_id, id(my_mask_key_func)) - def testSettingClassCallbacks(self): - """ App class should provide possibility to set callback functions via class instantiate call, class inheritance - and via setting instance attributes - """ - class TestApp(ws.WebSocketApp): - def on_close(self): - pass - - def on_open(ws): - pass - - def on_message(ws): - pass - - app = TestApp('ws://www.example.com/', on_open=on_open) - app.on_message = on_message - - #assert isinstance(app.on_close, function) - assert callable(app.on_open) - assert callable(app.on_message) - assert callable(app.on_close) - class SockOptTest(unittest.TestCase): @unittest.skipUnless(TEST_WITH_INTERNET, "Internet-requiring tests are disabled") |