You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Found a weird bug while running the tests with pytest-qt installed:
(extra_foam) ➜ EXtra-foam git:(pytest) python3 -m pytest extra_foam -k foo -s
============================================================================================================= test session starts =============================================================================================================
platform linux -- Python 3.10.0, pytest-6.2.5, py-1.11.0, pluggy-1.0.0 -- /home/james/.conda/envs/extra_foam/bin/python3
cachedir: .pytest_cache
PyQt5 5.13.2 -- Qt runtime 5.13.2 -- Qt compiled 5.13.2
rootdir: /home/james/git/EXtra-foam, configfile: pytest.ini
plugins: qt-4.0.2
collected 614 items / 613 deselected / 1 selected
extra_foam/gui/image_tool/tests/test_image_tool.py::TestImageTool::testFoo libpng warning: iCCP: known incorrect sRGB profile
Foo
tearDown()
PASSEDtearDownClass()
Exceptions caught in Qt event loop:
________________________________________________________________________________
Traceback (most recent call last):
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 550, in connect
sock = self._connect()
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 606, in _connect
raise err
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 594, in _connect
sock.connect(socket_address)
ConnectionRefusedError: [Errno 111] Connection refused
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/james/git/EXtra-foam/extra_foam/gui/ctrl_widgets/data_source_widget.py", line 841, in updateAvailableSources
ret = self._mon.get_available_sources()
File "/home/james/git/EXtra-foam/extra_foam/database/mondata.py", line 145, in get_available_sources
ret = pipe.execute()
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/client.py", line 4006, in execute
conn = self.connection_pool.get_connection('MULTI',
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 1183, in get_connection
connection.connect()
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 554, in connect
raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error 111 connecting to 127.0.0.1:6379. Connection refused.
________________________________________________________________________________
Exceptions caught in Qt event loop:
________________________________________________________________________________
Traceback (most recent call last):
File "/home/james/git/EXtra-foam/extra_foam/gui/image_tool/bulletin_view.py", line 115, in _updateProcessCount
tid, n_processed, n_dropped, n_processed_pulses = \
TypeError: cannot unpack non-iterable NoneType object
________________________________________________________________________________
extra_foam/gui/image_tool/tests/test_image_tool.py::TestImageTool::testFoo ERROR
=================================================================================================================== ERRORS ====================================================================================================================
_________________________________________________________________________________________________ ERROR at teardown of TestImageTool.testFoo __________________________________________________________________________________________________
TEARDOWN ERROR: Exceptions caught in Qt event loop:
________________________________________________________________________________
Traceback (most recent call last):
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 550, in connect
sock = self._connect()
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 606, in _connect
raise err
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 594, in _connect
sock.connect(socket_address)
ConnectionRefusedError: [Errno 111] Connection refused
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/james/git/EXtra-foam/extra_foam/gui/ctrl_widgets/data_source_widget.py", line 841, in updateAvailableSources
ret = self._mon.get_available_sources()
File "/home/james/git/EXtra-foam/extra_foam/database/mondata.py", line 145, in get_available_sources
ret = pipe.execute()
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/client.py", line 4006, in execute
conn = self.connection_pool.get_connection('MULTI',
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 1183, in get_connection
connection.connect()
File "/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py", line 554, in connect
raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error 111 connecting to 127.0.0.1:6379. Connection refused.
________________________________________________________________________________
Traceback (most recent call last):
File "/home/james/git/EXtra-foam/extra_foam/gui/image_tool/bulletin_view.py", line 115, in _updateProcessCount
tid, n_processed, n_dropped, n_processed_pulses = \
TypeError: cannot unpack non-iterable NoneType object
________________________________________________________________________________
============================================================================================================== warnings summary ===============================================================================================================
../../.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py:2
/home/james/.conda/envs/extra_foam/lib/python3.10/site-packages/redis/connection.py:2: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternati
ves
from distutils.version import StrictVersion
-- Docs: https://docs.pytest.org/en/stable/warnings.html
=========================================================================================================== short test summary info ===========================================================================================================
ERROR extra_foam/gui/image_tool/tests/test_image_tool.py::TestImageTool::testFoo
============================================================================================ 1 passed, 613 deselected, 1 warning, 1 error in 5.79s ============================================================================================
This occurred with a dummy test that does literally nothing, it's just a pass statement. And it only happens with pytest-qt installed. I looked into it briefly, and what I suspect is happening is that there's a timer running that calls a function that calls Redis, and the timer doesn't stop before Redis is shutdown. This specific error is (probably) caused by self._avail_src_timer in DataSourceWidget, but there are similar timers elsewhere like in BulletinView.
It's interesting that this only happens with the pytest-qt plugin, maybe it does some extra introspection for Qt that's missed by pytest?
The text was updated successfully, but these errors were encountered:
Found a weird bug while running the tests with
pytest-qt
installed:This occurred with a dummy test that does literally nothing, it's just a
pass
statement. And it only happens withpytest-qt
installed. I looked into it briefly, and what I suspect is happening is that there's a timer running that calls a function that calls Redis, and the timer doesn't stop before Redis is shutdown. This specific error is (probably) caused byself._avail_src_timer
inDataSourceWidget
, but there are similar timers elsewhere like inBulletinView
.It's interesting that this only happens with the
pytest-qt
plugin, maybe it does some extra introspection for Qt that's missed bypytest
?The text was updated successfully, but these errors were encountered: