running extract_messages extracting messages from invenio_accounts/__init__.py (encoding="utf-8") extracting messages from invenio_accounts/admin.py (encoding="utf-8") extracting messages from invenio_accounts/api.py (encoding="utf-8") extracting messages from invenio_accounts/cli.py (encoding="utf-8") extracting messages from invenio_accounts/config.py (encoding="utf-8") extracting messages from invenio_accounts/datastore.py (encoding="utf-8") extracting messages from invenio_accounts/domains.py (encoding="utf-8") extracting messages from invenio_accounts/errors.py (encoding="utf-8") extracting messages from invenio_accounts/ext.py (encoding="utf-8") extracting messages from invenio_accounts/forms.py (encoding="utf-8") extracting messages from invenio_accounts/hash.py (encoding="utf-8") extracting messages from invenio_accounts/limiter.py (encoding="utf-8") extracting messages from invenio_accounts/models.py (encoding="utf-8") extracting messages from invenio_accounts/proxies.py (encoding="utf-8") extracting messages from invenio_accounts/sessions.py (encoding="utf-8") extracting messages from invenio_accounts/signals.py (encoding="utf-8") extracting messages from invenio_accounts/tasks.py (encoding="utf-8") extracting messages from invenio_accounts/testutils.py (encoding="utf-8") extracting messages from invenio_accounts/utils.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/037afe10e9ff_add_user_moderation_fields.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/23e196599f9f_change_datetime_types.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/62efc52773d4_create_useridentity_table.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/6ec5ce377ca3_create_domains.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/843bc79c426f_create_accounts_branch.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/9848d0149abd_create_accounts_tables.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/999dcbd19ace_users_versioning.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/dfbdf43a3e96_separate_login_info.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/e12419831262_add_new_columns_on_sessionactivity.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/eb9743315a9d_add_userprofile.py (encoding="utf-8") extracting messages from invenio_accounts/alembic/f2522cdd5fcd_change_accountsrole_primary_key_to_string.py (encoding="utf-8") extracting messages from invenio_accounts/context_processors/__init__.py (encoding="utf-8") extracting messages from invenio_accounts/context_processors/jwt.py (encoding="utf-8") extracting messages from invenio_accounts/profiles/__init__.py (encoding="utf-8") extracting messages from invenio_accounts/profiles/dicts.py (encoding="utf-8") extracting messages from invenio_accounts/profiles/schemas.py (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/_macros.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/base.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/base_cover.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/change_password.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/forgot_password.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/jwt.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/login_user.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/register_user.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/reset_password.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/send_confirmation.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/send_login.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/settings/base.html (encoding="utf-8") extracting messages from invenio_accounts/templates/invenio_accounts/settings/security.html (encoding="utf-8") extracting messages from invenio_accounts/templates/security/email/change_notice_rest.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/_macros.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/base.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/base_cover.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/change_password.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/forgot_password.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/jwt.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/login_user.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/register_user.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/reset_password.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/send_confirmation.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/send_login.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/settings/base.html (encoding="utf-8") extracting messages from invenio_accounts/templates/semantic-ui/invenio_accounts/settings/security.html (encoding="utf-8") extracting messages from invenio_accounts/views/__init__.py (encoding="utf-8") extracting messages from invenio_accounts/views/rest.py (encoding="utf-8") extracting messages from invenio_accounts/views/security.py (encoding="utf-8") extracting messages from invenio_accounts/views/settings.py (encoding="utf-8") writing PO template file to /dev/null redis Pulling postgresql Pulling redis Pulled postgresql Pulled Network docker_services_cli_default Creating Network docker_services_cli_default Created Container docker_services_cli-redis-1 Creating Container docker_services_cli-postgresql-1 Creating Container docker_services_cli-postgresql-1 Created Container docker_services_cli-redis-1 Created Container docker_services_cli-redis-1 Starting Container docker_services_cli-postgresql-1 Starting Container docker_services_cli-redis-1 Started Container docker_services_cli-postgresql-1 Started ============================= test session starts ============================== platform linux -- Python 3.14.2, pytest-8.4.2, pluggy-1.6.0 rootdir: /home/runner/work/rdm-14-tests/rdm-14-tests/workdir/tests/invenio-accounts/original configfile: setup.cfg testpaths: tests, invenio_accounts plugins: flask-1.3.0, black-0.6.0, github-actions-annotate-failures-0.4.1, pycodestyle-2.5.0, cov-7.1.0, invenio-4.0.1, pydocstyle-2.4.0, isort-4.0.0 collected 265 items / 1 skipped tests/conftest.py ... [ 1%] tests/e2e/conftest.py ... [ 2%] tests/e2e/e2e_basic_test.py ... [ 3%] tests/test_admin.py [ 5%] tests/test_alembic.py [ 6%] tests/test_auth_ratelimit.py [ 9%] tests/test_cli.py [ 12%] tests/test_forms.py .... [ 13%] tests/test_hash.py [ 18%] tests/test_invenio_accounts.py [ 24%] tests/test_models.py .......... [ 28%] tests/test_schemas.py ..... [ 30%] tests/test_sessions.py .....ss..... [ 34%] tests/test_tasks.py ...... [ 36%] tests/test_template_context_processors.py [ 38%] tests/test_token_duration.py ..... [ 40%] tests/test_utils.py [ 44%] tests/test_validated_dicts.py ..... [ 46%] tests/test_views.py ........ [ 49%] tests/test_views_rest.py [ 55%] invenio_accounts/__init__.py ... [ 56%] invenio_accounts/admin.py ... [ 58%] invenio_accounts/alembic/037afe10e9ff_add_user_moderation_fields.py ... [ 59%] invenio_accounts/alembic/23e196599f9f_change_datetime_types.py ... [ 60%] invenio_accounts/alembic/62efc52773d4_create_useridentity_table.py ... [ 61%] invenio_accounts/alembic/6ec5ce377ca3_create_domains.py ... [ 62%] invenio_accounts/alembic/843bc79c426f_create_accounts_branch.py ... [ 63%] invenio_accounts/alembic/9848d0149abd_create_accounts_tables.py ... [ 64%] invenio_accounts/alembic/999dcbd19ace_users_versioning.py ... [ 66%] invenio_accounts/alembic/dfbdf43a3e96_separate_login_info.py ... [ 67%] invenio_accounts/alembic/e12419831262_add_new_columns_on_sessionactivity.py . [ 67%] [ 68%] invenio_accounts/alembic/eb9743315a9d_add_userprofile.py ... [ 69%] invenio_accounts/alembic/f2522cdd5fcd_change_accountsrole_primary_key_to_string.py . [ 69%] [ 70%] invenio_accounts/api.py ... [ 71%] invenio_accounts/cli.py ... [ 72%] invenio_accounts/config.py ... [ 73%] invenio_accounts/context_processors/__init__.py ... [ 75%] invenio_accounts/context_processors/jwt.py ... [ 76%] invenio_accounts/datastore.py ... [ 77%] invenio_accounts/domains.py ... [ 78%] invenio_accounts/errors.py ... [ 79%] invenio_accounts/ext.py ... [ 80%] invenio_accounts/forms.py ... [ 81%] invenio_accounts/hash.py ... [ 83%] invenio_accounts/limiter.py ... [ 84%] invenio_accounts/models.py ... [ 85%] invenio_accounts/profiles/__init__.py ... [ 86%] invenio_accounts/profiles/dicts.py ... [ 87%] invenio_accounts/profiles/schemas.py ... [ 88%] invenio_accounts/proxies.py ... [ 89%] invenio_accounts/sessions.py ... [ 90%] invenio_accounts/signals.py ... [ 92%] invenio_accounts/tasks.py ... [ 93%] invenio_accounts/testutils.py ... [ 94%] invenio_accounts/utils.py ... [ 95%] invenio_accounts/views/__init__.py ... [ 96%] invenio_accounts/views/rest.py ... [ 97%] invenio_accounts/views/security.py ... [ 98%] invenio_accounts/views/settings.py ... [100%] =============================== warnings summary =============================== venv/lib/python3.14/site-packages/flask_admin/contrib/__init__.py:2 __import__('pkg_resources').declare_namespace(__name__) venv/lib/python3.14/site-packages/pkg_resources/__init__.py:3148 Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages declare_namespace(pkg) venv/lib/python3.14/site-packages/flask_admin/contrib/__init__.py:2 Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages __import__('pkg_resources').declare_namespace(__name__) venv/lib/python3.14/site-packages/pkg_resources/__init__.py:2560 Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages declare_namespace(parent) warnings.warn( tests/test_admin.py::test_admin_createuser tests/test_admin.py::test_admin_createuser tests/test_admin.py::test_admin_createuser tests/test_admin.py::test_admin_createuser return self.field_class(*self.args, **kw) tests/test_admin.py::test_admin_sessions tests/test_admin.py::test_admin_sessions /home/runner/work/rdm-14-tests/rdm-14-tests/workdir/tests/invenio-accounts/original/.venv/lib/python3.14/site-packages/flask_admin/contrib/sqla/view.py:1119: LegacyAPIWarning: The Query.get() method is considered legacy as of the 1.x series of SQLAlchemy and becomes a legacy construct in 2.0. The method is now available as Session.get() (deprecated since: 2.0) (Background on SQLAlchemy 2.0 at: https://sqlalche.me/e/b8d9) return self.session.query(self.model).get(tools.iterdecode(id)) tests/test_alembic.py::test_alembic tests/test_invenio_accounts.py::test_alembic util.warn_deprecated( tests/test_alembic.py::test_alembic tests/test_invenio_accounts.py::test_alembic super().alter_column( tests/test_alembic.py::test_alembic insp = Inspector.from_engine(ctx.connection.engine) self.init_app(app) tests/test_hash.py::test_unicode_regression tests/test_hash.py::test_invenio_aes_encrypted_email tests/test_hash.py::test_legacy_user_login tests/test_hash.py::test_monkey_patch_legacy encrypted_password = ctx.encrypt( tests/test_hash.py::test_unicode_regression tests/test_hash.py::test_invenio_aes_encrypted_email tests/test_hash.py::test_legacy_user_login tests/test_hash.py::test_monkey_patch_legacy warn( tests/test_hash.py::test_unicode_regression tests/test_hash.py::test_invenio_aes_encrypted_email tests/test_hash.py::test_legacy_user_login tests/test_hash.py::test_monkey_patch_legacy return self.hash(*args, **kwds) tests/test_template_context_processors.py::test_context_processor_jwt tests/test_template_context_processors.py::test_context_processor_jwt_token tests/test_utils.py::test_jwt_token tests/test_utils.py::test_jwt_expired_token /home/runner/work/rdm-14-tests/rdm-14-tests/workdir/tests/invenio-accounts/original/.venv/lib/python3.14/site-packages/jwt/api_jwt.py:147: InsecureKeyLengthWarning: The HMAC key is 9 bytes long, which is below the minimum recommended length of 32 bytes for SHA256. See RFC 7518 Section 3.2 return self._jws.encode( tests/test_utils.py::test_jwt_token tests/test_utils.py::test_jwt_expired_token /home/runner/work/rdm-14-tests/rdm-14-tests/workdir/tests/invenio-accounts/original/.venv/lib/python3.14/site-packages/jwt/api_jwt.py:368: InsecureKeyLengthWarning: The HMAC key is 9 bytes long, which is below the minimum recommended length of 32 bytes for SHA256. See RFC 7518 Section 3.2 decoded = self.decode_complete( ================================ tests coverage ================================ _______________ coverage: platform linux, python 3.14.2-final-0 ________________ Name Stmts Miss Cover Missing invenio_accounts/__init__.py 11 4 64% 43-49 invenio_accounts/admin.py 122 8 93% 80, 200-206 invenio_accounts/alembic/6ec5ce377ca3_create_domains.py 18 0 100% invenio_accounts/alembic/23e196599f9f_change_datetime_types.py 23 0 100% invenio_accounts/alembic/037afe10e9ff_add_user_moderation_fields.py 14 0 100% invenio_accounts/alembic/62efc52773d4_create_useridentity_table.py 11 0 100% invenio_accounts/alembic/843bc79c426f_create_accounts_branch.py 8 0 100% invenio_accounts/alembic/999dcbd19ace_users_versioning.py 33 0 100% invenio_accounts/alembic/9848d0149abd_create_accounts_tables.py 31 0 100% invenio_accounts/alembic/dfbdf43a3e96_separate_login_info.py 26 0 100% invenio_accounts/alembic/e12419831262_add_new_columns_on_sessionactivity.py 22 0 100% invenio_accounts/alembic/eb9743315a9d_add_userprofile.py 20 0 100% invenio_accounts/alembic/f2522cdd5fcd_change_accountsrole_primary_key_to_string.py 50 11 78% 37, 46, 64-73, 126-133 invenio_accounts/api.py 40 9 78% 51-53, 57-59, 63-65 invenio_accounts/cli.py 128 15 88% 66, 74, 95-100, 181-188 invenio_accounts/config.py 152 0 100% invenio_accounts/context_processors/__init__.py 0 0 100% invenio_accounts/context_processors/jwt.py 10 0 100% invenio_accounts/datastore.py 82 23 72% 26-32, 36-41, 85-91, 107, 112, 116, 119-122 invenio_accounts/domains.py 15 3 80% 26-28 invenio_accounts/errors.py 7 2 71% 24-25 invenio_accounts/ext.py 143 24 83% 64, 71, 100-105, 180, 328-329, 339-341, 346-348, 353-364, 372-375, 383-394 invenio_accounts/forms.py 75 3 96% 52, 125, 136 invenio_accounts/hash.py 55 0 100% invenio_accounts/limiter.py 23 2 91% 13, 20 invenio_accounts/models.py 322 26 92% 208-209, 236, 238-243, 251, 260, 262-267, 275, 303, 456-461, 472-476, 485-486, 491-492 invenio_accounts/profiles/__init__.py 3 0 100% invenio_accounts/profiles/dicts.py 50 2 96% 49-50 invenio_accounts/profiles/schemas.py 25 0 100% invenio_accounts/proxies.py 15 0 100% invenio_accounts/sessions.py 62 2 97% 54, 132 invenio_accounts/signals.py 6 0 100% invenio_accounts/tasks.py 40 12 70% 54-55, 83-153 invenio_accounts/testutils.py 37 6 84% 110-115, 124 invenio_accounts/utils.py 134 8 94% 88, 139, 155, 243-244, 249-250, 273 invenio_accounts/views/__init__.py 2 0 100% invenio_accounts/views/rest.py 286 14 95% 70, 172-175, 177, 183-185, 278, 335, 366, 437, 439, 479, 573 invenio_accounts/views/security.py 31 2 94% 45, 59 invenio_accounts/views/settings.py 18 0 100% TOTAL 2150 176 92% ============ 263 passed, 3 skipped, 71 warnings in 99.54s (0:01:39) ============ Container docker_services_cli-redis-1 Stopping Container docker_services_cli-postgresql-1 Stopping Container docker_services_cli-postgresql-1 Stopped Container docker_services_cli-postgresql-1 Removing Container docker_services_cli-postgresql-1 Removed Container docker_services_cli-redis-1 Stopped Container docker_services_cli-redis-1 Removing Container docker_services_cli-redis-1 Removed Network docker_services_cli_default Removing Network docker_services_cli_default Removed