Cleaning up environment Preparing virtual environment Installing latest version of the repository Processing /tmp/tmp.a9JtYup2Qp/repo Collecting pyyaml Using cached PyYAML-5.4.1-cp39-cp39-manylinux1_x86_64.whl (630 kB) Collecting redis Using cached redis-3.5.3-py2.py3-none-any.whl (72 kB) Collecting requests Using cached requests-2.26.0-py2.py3-none-any.whl (62 kB) Collecting croniter Using cached croniter-1.0.15-py2.py3-none-any.whl (16 kB) Collecting sqlalchemy Using cached SQLAlchemy-1.4.23-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB) Collecting websockets Using cached websockets-10.0-cp39-cp39-manylinux2010_x86_64.whl (107 kB) Collecting websocket-client Using cached websocket_client-1.2.1-py2.py3-none-any.whl (52 kB) Collecting wheel Using cached wheel-0.37.0-py2.py3-none-any.whl (35 kB) Collecting zeroconf>=0.27.0 Using cached zeroconf-0.36.3-py3-none-any.whl (93 kB) Collecting tz Using cached tz-0.2.2-py3-none-any.whl (12 kB) Collecting python-dateutil Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) Collecting cryptography Using cached cryptography-3.4.8-cp36-abi3-manylinux_2_24_x86_64.whl (3.0 MB) Collecting pyjwt Using cached PyJWT-2.1.0-py3-none-any.whl (16 kB) Collecting marshmallow Using cached marshmallow-3.13.0-py2.py3-none-any.whl (47 kB) Collecting frozendict Using cached frozendict-2.0.6-py3-none-any.whl (8.3 kB) Collecting flask Using cached Flask-2.0.1-py3-none-any.whl (94 kB) Collecting bcrypt Using cached bcrypt-3.2.0-cp36-abi3-manylinux2010_x86_64.whl (63 kB) Collecting python-magic Using cached python_magic-0.4.24-py2.py3-none-any.whl (12 kB) Collecting ifaddr>=0.1.7 Using cached ifaddr-0.1.7-py2.py3-none-any.whl (10 kB) Collecting six>=1.4.1 Using cached six-1.16.0-py2.py3-none-any.whl (11 kB) Collecting cffi>=1.1 Using cached cffi-1.14.6-cp39-cp39-manylinux1_x86_64.whl (405 kB) Collecting pycparser Using cached pycparser-2.20-py2.py3-none-any.whl (112 kB) Collecting click>=7.1.2 Using cached click-8.0.1-py3-none-any.whl (97 kB) Collecting Jinja2>=3.0 Using cached Jinja2-3.0.1-py3-none-any.whl (133 kB) Collecting Werkzeug>=2.0 Using cached Werkzeug-2.0.1-py3-none-any.whl (288 kB) Collecting itsdangerous>=2.0 Using cached itsdangerous-2.0.1-py3-none-any.whl (18 kB) Collecting MarkupSafe>=2.0 Using cached MarkupSafe-2.0.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (30 kB) Collecting certifi>=2017.4.17 Using cached certifi-2021.5.30-py2.py3-none-any.whl (145 kB) Collecting charset-normalizer~=2.0.0 Using cached charset_normalizer-2.0.5-py3-none-any.whl (37 kB) Collecting idna<4,>=2.5 Using cached idna-3.2-py3-none-any.whl (59 kB) Collecting urllib3<1.27,>=1.21.1 Using cached urllib3-1.26.6-py2.py3-none-any.whl (138 kB) Collecting greenlet!=0.4.17 Using cached greenlet-1.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (147 kB) Using legacy 'setup.py install' for platypush, since package 'wheel' is not installed. Installing collected packages: six, pycparser, urllib3, python-dateutil, MarkupSafe, ifaddr, idna, greenlet, charset-normalizer, cffi, certifi, zeroconf, wheel, Werkzeug, websockets, websocket-client, tz, sqlalchemy, requests, redis, pyyaml, pyjwt, marshmallow, Jinja2, itsdangerous, frozendict, cryptography, croniter, click, python-magic, platypush, flask, bcrypt Running setup.py install for platypush: started Running setup.py install for platypush: finished with status 'done' Successfully installed Jinja2-3.0.1 MarkupSafe-2.0.1 Werkzeug-2.0.1 bcrypt-3.2.0 certifi-2021.5.30 cffi-1.14.6 charset-normalizer-2.0.5 click-8.0.1 croniter-1.0.15 cryptography-3.4.8 flask-2.0.1 frozendict-2.0.6 greenlet-1.1.1 idna-3.2 ifaddr-0.1.7 itsdangerous-2.0.1 marshmallow-3.13.0 platypush-0.21.4 pycparser-2.20 pyjwt-2.1.0 python-dateutil-2.8.2 python-magic-0.4.24 pyyaml-5.4.1 redis-3.5.3 requests-2.26.0 six-1.16.0 sqlalchemy-1.4.23 tz-0.2.2 urllib3-1.26.6 websocket-client-1.2.1 websockets-10.0 wheel-0.37.0 zeroconf-0.36.3 Running tests ============================= test session starts ============================== platform linux -- Python 3.9.6, pytest-6.2.4, py-1.10.0, pluggy-0.13.1 rootdir: /tmp/tmp.a9JtYup2Qp/repo collected 9 items tests/test_cron.py . [ 11%] tests/test_event_parse.py . [ 22%] tests/test_http.py FF... [ 77%] tests/test_procedure.py .. [100%] =================================== FAILURES =================================== ____________________ test_request_with_no_registered_users _____________________ base_url = 'http://localhost:8123' expected_registration_redirect = 'http://localhost:8123/register?redirect=http://localhost:8123/execute' def test_request_with_no_registered_users(base_url, expected_registration_redirect): """ An /execute request performed before any user is registered should redirect to the registration page. """ response = send_request(authenticate=False, parse_json=False) > assert expected_registration_redirect == response.url, \ 'No users registered, but the application did not redirect us to the registration page' E AssertionError: No users registered, but the application did not redirect us to the registration page E assert 'http://local...:8123/execute' == 'http://local...:8123/execute' E - http://localhost:8123/login?redirect=http://localhost:8123/execute E ? ^^ ^ E + http://localhost:8123/register?redirect=http://localhost:8123/execute E ? ^^ ^^^^ tests/test_http.py:25: AssertionError _________________________ test_first_user_registration _________________________ base_url = 'http://localhost:8123' def test_first_user_registration(base_url): """ Emulate a first user registration through form and get the session_token. """ response = register_user() assert len(response.history) > 0, 'Redirect missing from the history' > assert 'session_token' in response.history[0].cookies, 'No session_token returned upon registration' E AssertionError: No session_token returned upon registration E assert 'session_token' in E + where = .cookies tests/test_http.py:36: AssertionError =============================== warnings summary =============================== tests/test_cron.py::test_cron_execution /usr/lib/python3.9/site-packages/_pytest/threadexception.py:75: PytestUnhandledThreadExceptionWarning: Exception in thread HttpBackend Traceback (most recent call last): File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner self.run() File "/tmp/tmp.a9JtYup2Qp/repo/platypush/backend/http/__init__.py", line 405, in run self.register_service(port=self.port) File "/tmp/tmp.a9JtYup2Qp/repo/platypush/backend/__init__.py", line 378, in register_service self.zeroconf.register_service(self.zeroconf_info) File "/usr/lib/python3.9/site-packages/zeroconf/__init__.py", line 2604, in register_service self.check_service(info, allow_name_change, cooperating_responders) File "/usr/lib/python3.9/site-packages/zeroconf/__init__.py", line 2708, in check_service raise NonUniqueNameException zeroconf.NonUniqueNameException warnings.warn(pytest.PytestUnhandledThreadExceptionWarning(msg)) -- Docs: https://docs.pytest.org/en/stable/warnings.html =========================== short test summary info ============================ FAILED tests/test_http.py::test_request_with_no_registered_users - AssertionE... FAILED tests/test_http.py::test_first_user_registration - AssertionError: No ... ==================== 2 failed, 7 passed, 1 warning in 9.52s ==================== FAILED tests/test_http.py::test_request_with_no_registered_users - AssertionE... FAILED tests/test_http.py::test_first_user_registration - AssertionError: No ... Cleaning up environment Status: FAILED