diff --git a/meta-python/recipes-devtools/python/python3-simple-websocket/0002-Removed-net-access-requirement-in-client-unit-tests.patch b/meta-python/recipes-devtools/python/python3-simple-websocket/0002-Removed-net-access-requirement-in-client-unit-tests.patch new file mode 100644 index 0000000000..7266ee57f3 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-simple-websocket/0002-Removed-net-access-requirement-in-client-unit-tests.patch @@ -0,0 +1,141 @@ +From 159e030c7c23060de989cebec6d98d776c75bcbd Mon Sep 17 00:00:00 2001 +From: Miguel Grinberg +Date: Sun, 13 Oct 2024 15:11:39 +0100 +Subject: [PATCH] Removed net access requirement in client unit tests (Fixes + #40) + +Upstream-Status: Backport [https://github.com/miguelgrinberg/simple-websocket/commit/159e030c7c23060de989cebec6d98d776c75bcbd] +Signed-off-by: Khem Raj +--- + tests/test_client.py | 34 +++++++++++++++++----------------- + 1 file changed, 17 insertions(+), 17 deletions(-) + +diff --git a/tests/test_client.py b/tests/test_client.py +index d986520..898b423 100644 +--- a/tests/test_client.py ++++ b/tests/test_client.py +@@ -22,16 +22,16 @@ def get_client(self, mock_wsconn, url, events=[], subprotocols=None, + @mock.patch('simple_websocket.ws.WSConnection') + def test_make_client(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws?a=1') ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws?a=1') + assert client.sock == mock_socket() + assert client.receive_bytes == 4096 + assert client.input_buffer == [] + assert client.event.__class__.__name__ == 'Event' + client.sock.send.assert_called_with( +- b"Request(host='example.com', target='/ws?a=1', extensions=[], " ++ b"Request(host='localhost', target='/ws?a=1', extensions=[], " + b"extra_headers=[], subprotocols=[])") + assert not client.is_server +- assert client.host == 'example.com' ++ assert client.host == 'localhost' + assert client.port == 80 + assert client.path == '/ws?a=1' + +@@ -39,42 +39,42 @@ def test_make_client(self, mock_wsconn, mock_socket): + @mock.patch('simple_websocket.ws.WSConnection') + def test_make_client_subprotocol(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws?a=1', ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws?a=1', + subprotocols='foo') + assert client.subprotocols == ['foo'] + client.sock.send.assert_called_with( +- b"Request(host='example.com', target='/ws?a=1', extensions=[], " ++ b"Request(host='localhost', target='/ws?a=1', extensions=[], " + b"extra_headers=[], subprotocols=['foo'])") + + @mock.patch('simple_websocket.ws.socket.socket') + @mock.patch('simple_websocket.ws.WSConnection') + def test_make_client_subprotocols(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws?a=1', ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws?a=1', + subprotocols=['foo', 'bar']) + assert client.subprotocols == ['foo', 'bar'] + client.sock.send.assert_called_with( +- b"Request(host='example.com', target='/ws?a=1', extensions=[], " ++ b"Request(host='localhost', target='/ws?a=1', extensions=[], " + b"extra_headers=[], subprotocols=['foo', 'bar'])") + + @mock.patch('simple_websocket.ws.socket.socket') + @mock.patch('simple_websocket.ws.WSConnection') + def test_make_client_headers(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws?a=1', ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws?a=1', + headers={'Foo': 'Bar'}) + client.sock.send.assert_called_with( +- b"Request(host='example.com', target='/ws?a=1', extensions=[], " ++ b"Request(host='localhost', target='/ws?a=1', extensions=[], " + b"extra_headers=[('Foo', 'Bar')], subprotocols=[])") + + @mock.patch('simple_websocket.ws.socket.socket') + @mock.patch('simple_websocket.ws.WSConnection') + def test_make_client_headers2(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws?a=1', ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws?a=1', + headers=[('Foo', 'Bar'), ('Foo', 'Baz')]) + client.sock.send.assert_called_with( +- b"Request(host='example.com', target='/ws?a=1', extensions=[], " ++ b"Request(host='localhost', target='/ws?a=1', extensions=[], " + b"extra_headers=[('Foo', 'Bar'), ('Foo', 'Baz')], " + b"subprotocols=[])") + +@@ -82,7 +82,7 @@ def test_make_client_headers2(self, mock_wsconn, mock_socket): + @mock.patch('simple_websocket.ws.WSConnection') + def test_send(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws') ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws') + while client.connected: + time.sleep(0.01) + with pytest.raises(simple_websocket.ConnectionClosed): +@@ -102,7 +102,7 @@ def test_send(self, mock_wsconn, mock_socket): + @mock.patch('simple_websocket.ws.WSConnection') + def test_receive(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws', events=[ ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws', events=[ + [TextMessage('hello')], + [BytesMessage(b'hello')], + ]) +@@ -117,7 +117,7 @@ def test_receive(self, mock_wsconn, mock_socket): + @mock.patch('simple_websocket.ws.WSConnection') + def test_receive_after_close(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws', events=[ ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws', events=[ + [TextMessage('hello')], + ]) + while client.connected: +@@ -130,7 +130,7 @@ def test_receive_after_close(self, mock_wsconn, mock_socket): + @mock.patch('simple_websocket.ws.WSConnection') + def test_receive_ping(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws', events=[ ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws', events=[ + [Ping(b'hello')], + ]) + while client.connected: +@@ -141,7 +141,7 @@ def test_receive_ping(self, mock_wsconn, mock_socket): + @mock.patch('simple_websocket.ws.WSConnection') + def test_receive_empty(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.side_effect = [b'x', b'x', b''] +- client = self.get_client(mock_wsconn, 'ws://example.com/ws', events=[ ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws', events=[ + [TextMessage('hello')], + ]) + while client.connected: +@@ -154,7 +154,7 @@ def test_receive_empty(self, mock_wsconn, mock_socket): + @mock.patch('simple_websocket.ws.WSConnection') + def test_close(self, mock_wsconn, mock_socket): + mock_socket.return_value.recv.return_value = b'x' +- client = self.get_client(mock_wsconn, 'ws://example.com/ws') ++ client = self.get_client(mock_wsconn, 'ws://localhost/ws') + while client.connected: + time.sleep(0.01) + with pytest.raises(simple_websocket.ConnectionClosed): diff --git a/meta-python/recipes-devtools/python/python3-simple-websocket_1.1.0.bb b/meta-python/recipes-devtools/python/python3-simple-websocket_1.1.0.bb index 35c568cf7c..2438495dd3 100644 --- a/meta-python/recipes-devtools/python/python3-simple-websocket_1.1.0.bb +++ b/meta-python/recipes-devtools/python/python3-simple-websocket_1.1.0.bb @@ -5,7 +5,9 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=9d272c9fe2437531b5bbecf4fcc82e24" inherit pypi python_setuptools_build_meta ptest-python-pytest -SRC_URI += "file://0001-Async-test-improvements-for-Python-3.14-48.patch" +SRC_URI += "file://0001-Async-test-improvements-for-Python-3.14-48.patch \ + file://0002-Removed-net-access-requirement-in-client-unit-tests.patch \ + " SRC_URI[sha256sum] = "7939234e7aa067c534abdab3a9ed933ec9ce4691b0713c78acb195560aa52ae4" RDEPENDS:${PN} += " \