>>> py3-django-otp: Building community/py3-django-otp 1.5.0-r1 (using abuild 3.13.0-r3) started Sun, 05 May 2024 23:22:38 +0000 >>> py3-django-otp: Checking sanity of /home/buildozer/aports/community/py3-django-otp/APKBUILD... >>> py3-django-otp: Analyzing dependencies... >>> py3-django-otp: Installing for build: build-base py3-django py3-qrcode py3-gpep517 py3-setuptools py3-wheel py3-hatchling py3-freezegun (1/70) Installing libbz2 (1.0.8-r6) (2/70) Installing libffi (3.4.6-r0) (3/70) Installing gdbm (1.23-r1) (4/70) Installing xz-libs (5.6.1-r3) (5/70) Installing mpdecimal (4.0.0-r0) (6/70) Installing libpanelw (6.4_p20240330-r0) (7/70) Installing readline (8.2.10-r0) (8/70) Installing sqlite-libs (3.45.3-r0) (9/70) Installing python3 (3.12.3-r1) (10/70) Installing python3-pycache-pyc0 (3.12.3-r1) (11/70) Installing pyc (3.12.3-r1) (12/70) Installing py3-asgiref (3.8.1-r1) (13/70) Installing py3-asgiref-pyc (3.8.1-r1) (14/70) Installing py3-sqlparse (0.4.4-r2) (15/70) Installing py3-sqlparse-pyc (0.4.4-r2) (16/70) Installing tzdata (2024a-r1) (17/70) Installing py3-django-pyc (4.2.11-r1) (18/70) Installing python3-pyc (3.12.3-r1) (19/70) Installing py3-django (4.2.11-r1) (20/70) Installing libpng (1.6.43-r0) (21/70) Installing freetype (2.13.2-r0) (22/70) Installing libimagequant (4.2.2-r0) (23/70) Installing libjpeg-turbo (3.0.2-r0) (24/70) Installing lcms2 (2.16-r0) (25/70) Installing openjpeg (2.5.2-r0) (26/70) Installing libsharpyuv (1.3.2-r0) (27/70) Installing libwebp (1.3.2-r0) (28/70) Installing tiff (4.6.0t-r0) (29/70) Installing libwebpdemux (1.3.2-r0) (30/70) Installing libwebpmux (1.3.2-r0) (31/70) Installing libxau (1.0.11-r4) (32/70) Installing libmd (1.1.0-r0) (33/70) Installing libbsd (0.12.2-r0) (34/70) Installing libxdmcp (1.1.5-r1) (35/70) Installing libxcb (1.16.1-r0) (36/70) Installing py3-pillow (10.3.0-r2) (37/70) Installing py3-pillow-pyc (10.3.0-r2) (38/70) Installing py3-pypng (0.0.20-r5) (39/70) Installing py3-pypng-pyc (0.0.20-r5) (40/70) Installing py3-parsing (3.1.2-r1) (41/70) Installing py3-parsing-pyc (3.1.2-r1) (42/70) Installing py3-packaging (24.0-r1) (43/70) Installing py3-packaging-pyc (24.0-r1) (44/70) Installing py3-setuptools (69.5.1-r0) (45/70) Installing py3-setuptools-pyc (69.5.1-r0) (46/70) Installing py3-qrcode (7.4.2-r3) (47/70) Installing py3-qrcode-pyc (7.4.2-r3) (48/70) Installing py3-installer (0.7.0-r2) (49/70) Installing py3-installer-pyc (0.7.0-r2) (50/70) Installing py3-gpep517 (15-r2) (51/70) Installing py3-gpep517-pyc (15-r2) (52/70) Installing py3-wheel (0.42.0-r1) (53/70) Installing py3-wheel-pyc (0.42.0-r1) (54/70) Installing py3-editables (0.5-r2) (55/70) Installing py3-editables-pyc (0.5-r2) (56/70) Installing py3-pathspec (0.12.1-r2) (57/70) Installing py3-pathspec-pyc (0.12.1-r2) (58/70) Installing py3-pluggy (1.5.0-r0) (59/70) Installing py3-pluggy-pyc (1.5.0-r0) (60/70) Installing py3-trove-classifiers (2024.3.3-r2) (61/70) Installing py3-trove-classifiers-pyc (2024.3.3-r2) (62/70) Installing py3-hatchling (1.24.2-r0) (63/70) Installing py3-hatchling-pyc (1.24.2-r0) (64/70) Installing py3-six (1.16.0-r9) (65/70) Installing py3-six-pyc (1.16.0-r9) (66/70) Installing py3-dateutil (2.9.0-r1) (67/70) Installing py3-dateutil-pyc (2.9.0-r1) (68/70) Installing py3-freezegun (1.4.0-r1) (69/70) Installing py3-freezegun-pyc (1.4.0-r1) (70/70) Installing .makedepends-py3-django-otp (20240505.232239) Executing busybox-1.36.1-r26.trigger OK: 461 MiB in 177 packages >>> py3-django-otp: Cleaning up srcdir >>> py3-django-otp: Cleaning up pkgdir >>> py3-django-otp: Cleaning up tmpdir >>> py3-django-otp: Fetching https://distfiles.alpinelinux.org/distfiles/edge//py3-django-otp-1.5.0.tar.gz >>> py3-django-otp: Fetching https://distfiles.alpinelinux.org/distfiles/edge//py3-django-otp-1.5.0.tar.gz >>> py3-django-otp: Checking sha512sums... py3-django-otp-1.5.0.tar.gz: OK >>> py3-django-otp: Unpacking /var/cache/distfiles/edge/py3-django-otp-1.5.0.tar.gz... 2024-05-05 23:22:40,180 gpep517 INFO Building wheel via backend hatchling.build 2024-05-05 23:22:40,248 gpep517 INFO The backend produced .dist/django_otp-1.5.0-py3-none-any.whl django_otp-1.5.0-py3-none-any.whl Creating test database for alias 'default' ('file:memorydb_default?mode=memory&cache=shared')... Found 151 test(s). Operations to perform: Synchronize unmigrated apps: django_otp, messages, staticfiles Apply all migrations: admin, auth, contenttypes, otp_email, otp_hotp, otp_static, otp_totp, sessions Synchronizing apps without migrations: Creating tables... Running deferred SQL... Running migrations: Applying contenttypes.0001_initial... OK Applying auth.0001_initial... OK Applying admin.0001_initial... OK Applying admin.0002_logentry_remove_auto_add... OK Applying admin.0003_logentry_add_action_flag_choices... OK Applying contenttypes.0002_remove_content_type_name... OK Applying auth.0002_alter_permission_name_max_length... OK Applying auth.0003_alter_user_email_max_length... OK Applying auth.0004_alter_user_username_opts... OK Applying auth.0005_alter_user_last_login_null... OK Applying auth.0006_require_contenttypes_0002... OK Applying auth.0007_alter_validators_add_error_messages... OK Applying auth.0008_alter_user_username_max_length... OK Applying auth.0009_alter_user_last_name_max_length... OK Applying auth.0010_alter_group_name_max_length... OK Applying auth.0011_update_proxy_permissions... OK Applying auth.0012_alter_user_first_name_max_length... OK Applying otp_email.0001_initial... OK Applying otp_email.0002_sidechanneldevice_email... OK Applying otp_email.0003_emaildevice_email... OK Applying otp_email.0004_throttling... OK Applying otp_email.0005_emaildevice_last_generated_timestamp... OK Applying otp_email.0006_add_timestamps... OK Applying otp_hotp.0001_initial... OK Applying otp_hotp.0002_auto_20190420_0723... OK Applying otp_hotp.0003_add_timestamps... OK Applying otp_static.0001_initial... OK Applying otp_static.0002_throttling... OK Applying otp_static.0003_add_timestamps... OK Applying otp_totp.0001_initial... OK Applying otp_totp.0002_auto_20190420_0723... OK Applying otp_totp.0003_add_timestamps... OK Applying sessions.0001_initial... OK System check identified no issues (0 silenced). test_email_interaction (django_otp.plugins.otp_email.tests.AuthFormTest.test_email_interaction) ... ok test_cooldown_expire_time (django_otp.plugins.otp_email.tests.CooldownTestCase.test_cooldown_expire_time) When token generation is not allowed, the cooldown expire time ... ok test_cooldown_imposed_after_successful_generation (django_otp.plugins.otp_email.tests.CooldownTestCase.test_cooldown_imposed_after_successful_generation) Token generation before cooldown should not be allowed ... ok test_cooldown_imposed_expiration_message (django_otp.plugins.otp_email.tests.CooldownTestCase.test_cooldown_imposed_expiration_message) ... ok test_cooldown_imposed_message (django_otp.plugins.otp_email.tests.CooldownTestCase.test_cooldown_imposed_message) ... ok test_cooldown_reset (django_otp.plugins.otp_email.tests.CooldownTestCase.test_cooldown_reset) Cooldown can be reset and allow token generation again before the initial period expires. ... ok test_generate_is_allowed_on_first_try (django_otp.plugins.otp_email.tests.CooldownTestCase.test_generate_is_allowed_on_first_try) Token generation should be allowed on first try. ... ok test_invalid_token_verification_does_not_reset_cooldown (django_otp.plugins.otp_email.tests.CooldownTestCase.test_invalid_token_verification_does_not_reset_cooldown) When the token is not verified, the cooldown period is not reset. ... ok test_valid_token_verification_resets_cooldown (django_otp.plugins.otp_email.tests.CooldownTestCase.test_valid_token_verification_resets_cooldown) When the token is verified, the cooldown period is reset. ... ok test_alternative_email (django_otp.plugins.otp_email.tests.EmailTest.test_alternative_email) ... ok test_defaults (django_otp.plugins.otp_email.tests.EmailTest.test_defaults) ... ok test_invalid_token (django_otp.plugins.otp_email.tests.EmailTest.test_invalid_token) ... ok test_no_reuse (django_otp.plugins.otp_email.tests.EmailTest.test_no_reuse) ... ok test_settings (django_otp.plugins.otp_email.tests.EmailTest.test_settings) ... ok test_settings_extra_template_options (django_otp.plugins.otp_email.tests.EmailTest.test_settings_extra_template_options) ... ok test_settings_html_template (django_otp.plugins.otp_email.tests.EmailTest.test_settings_html_template) ... ok test_settings_html_template_path (django_otp.plugins.otp_email.tests.EmailTest.test_settings_html_template_path) ... ok test_settings_template_path (django_otp.plugins.otp_email.tests.EmailTest.test_settings_template_path) ... ok test_token_expiry (django_otp.plugins.otp_email.tests.EmailTest.test_token_expiry) ... ok test_token_generator (django_otp.plugins.otp_email.tests.EmailTest.test_token_generator) ... ok test_delay_after_fail_expires (django_otp.plugins.otp_email.tests.ThrottlingTestCase.test_delay_after_fail_expires) ... ok test_delay_imposed_after_fail (django_otp.plugins.otp_email.tests.ThrottlingTestCase.test_delay_imposed_after_fail) ... ok test_throttling_failure_count (django_otp.plugins.otp_email.tests.ThrottlingTestCase.test_throttling_failure_count) ... ok test_verify_is_allowed (django_otp.plugins.otp_email.tests.ThrottlingTestCase.test_verify_is_allowed) ... ok test_created_at_set_on_creation (django_otp.plugins.otp_email.tests.TimestampTestCase.test_created_at_set_on_creation) Verify that the `created_at` field is automatically set upon creation. ... ok test_last_used_at_initially_none (django_otp.plugins.otp_email.tests.TimestampTestCase.test_last_used_at_initially_none) Ensure `last_used_at` is None upon initial creation. ... ok test_set_last_used_timestamp_updates_field (django_otp.plugins.otp_email.tests.TimestampTestCase.test_set_last_used_timestamp_updates_field) Check if `set_last_used_timestamp` correctly updates the `last_used_at` field. ... ok test_set_last_used_timestamp_without_commit (django_otp.plugins.otp_email.tests.TimestampTestCase.test_set_last_used_timestamp_without_commit) Ensure `set_last_used_timestamp` updates `last_used_at` without persisting ... ok test_verify_token_failed_does_not_update_last_used_at (django_otp.plugins.otp_email.tests.TimestampTestCase.test_verify_token_failed_does_not_update_last_used_at) Verifying with an invalid token does not update 'last_used_at'. ... ok test_verify_token_successful_updates_last_used_at (django_otp.plugins.otp_email.tests.TimestampTestCase.test_verify_token_successful_updates_last_used_at) Verifying with a valid token updates 'last_used_at'. ... ok test_attempt_after_fail (django_otp.plugins.otp_hotp.tests.AuthFormTest.test_attempt_after_fail) ... ok test_bad_token (django_otp.plugins.otp_hotp.tests.AuthFormTest.test_bad_token) ... ok test_good_token (django_otp.plugins.otp_hotp.tests.AuthFormTest.test_good_token) ... ok test_no_token (django_otp.plugins.otp_hotp.tests.AuthFormTest.test_no_token) ... ok test_anonymous (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_anonymous) ... ok test_change_perm (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_change_perm) ... ok test_config_view_when_sensitive_information_hidden (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_config_view_when_sensitive_information_hidden) ... ok test_config_view_when_sensitive_information_shown (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_config_view_when_sensitive_information_shown) ... ok test_list_display_when_sensitive_information_hidden (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_list_display_when_sensitive_information_hidden) ... ok test_list_display_when_sensitive_information_shown (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_list_display_when_sensitive_information_shown) ... ok test_qrcode_view_when_sensitive_information_hidden (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_qrcode_view_when_sensitive_information_hidden) ... ok test_qrcode_view_when_sensitive_information_shown (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_qrcode_view_when_sensitive_information_shown) ... ok test_sensitive_information_hidden_while_adding_device (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_sensitive_information_hidden_while_adding_device) ... ok test_sensitive_information_hidden_while_changing_device (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_sensitive_information_hidden_while_changing_device) ... ok test_sensitive_information_shown_while_adding_device (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_sensitive_information_shown_while_adding_device) ... ok test_sensitive_information_shown_while_changing_device (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_sensitive_information_shown_while_changing_device) ... ok test_unauthorized (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_unauthorized) ... ok test_view_perm (django_otp.plugins.otp_hotp.tests.HOTPAdminTest.test_view_perm) ... ok test_bad_value (django_otp.plugins.otp_hotp.tests.HOTPTest.test_bad_value) ... ok test_config_url_issuer (django_otp.plugins.otp_hotp.tests.HOTPTest.test_config_url_issuer) ... ok test_config_url_issuer_method (django_otp.plugins.otp_hotp.tests.HOTPTest.test_config_url_issuer_method) ... ok test_config_url_issuer_spaces (django_otp.plugins.otp_hotp.tests.HOTPTest.test_config_url_issuer_spaces) ... ok test_config_url_no_issuer (django_otp.plugins.otp_hotp.tests.HOTPTest.test_config_url_no_issuer) ... ok test_excessive_drift (django_otp.plugins.otp_hotp.tests.HOTPTest.test_excessive_drift) ... ok test_normal (django_otp.plugins.otp_hotp.tests.HOTPTest.test_normal) ... ok test_normal_drift (django_otp.plugins.otp_hotp.tests.HOTPTest.test_normal_drift) ... ok test_delay_after_fail_expires (django_otp.plugins.otp_hotp.tests.ThrottlingTestCase.test_delay_after_fail_expires) ... ok test_delay_imposed_after_fail (django_otp.plugins.otp_hotp.tests.ThrottlingTestCase.test_delay_imposed_after_fail) ... ok test_throttling_failure_count (django_otp.plugins.otp_hotp.tests.ThrottlingTestCase.test_throttling_failure_count) ... ok test_verify_is_allowed (django_otp.plugins.otp_hotp.tests.ThrottlingTestCase.test_verify_is_allowed) ... ok test_created_at_set_on_creation (django_otp.plugins.otp_hotp.tests.TimetstampTestCase.test_created_at_set_on_creation) Verify that the `created_at` field is automatically set upon creation. ... ok test_last_used_at_initially_none (django_otp.plugins.otp_hotp.tests.TimetstampTestCase.test_last_used_at_initially_none) Ensure `last_used_at` is None upon initial creation. ... ok test_set_last_used_timestamp_updates_field (django_otp.plugins.otp_hotp.tests.TimetstampTestCase.test_set_last_used_timestamp_updates_field) Check if `set_last_used_timestamp` correctly updates the `last_used_at` field. ... ok test_set_last_used_timestamp_without_commit (django_otp.plugins.otp_hotp.tests.TimetstampTestCase.test_set_last_used_timestamp_without_commit) Ensure `set_last_used_timestamp` updates `last_used_at` without persisting ... ok test_verify_token_failed_does_not_update_last_used_at (django_otp.plugins.otp_hotp.tests.TimetstampTestCase.test_verify_token_failed_does_not_update_last_used_at) Verifying with an invalid token does not update 'last_used_at'. ... ok test_verify_token_successful_updates_last_used_at (django_otp.plugins.otp_hotp.tests.TimetstampTestCase.test_verify_token_successful_updates_last_used_at) Verifying with a valid token updates 'last_used_at'. ... ok test_bad_password (django_otp.plugins.otp_static.tests.AuthFormTest.test_bad_password) ... ok test_empty (django_otp.plugins.otp_static.tests.AuthFormTest.test_empty) ... ok test_no_token (django_otp.plugins.otp_static.tests.AuthFormTest.test_no_token) ... ok test_passive_token (django_otp.plugins.otp_static.tests.AuthFormTest.test_passive_token) ... ok test_specific_device (django_otp.plugins.otp_static.tests.AuthFormTest.test_specific_device) ... ok test_specific_device_fail (django_otp.plugins.otp_static.tests.AuthFormTest.test_specific_device_fail) ... ok test_spoofed_device (django_otp.plugins.otp_static.tests.AuthFormTest.test_spoofed_device) ... ok test_str (django_otp.plugins.otp_static.tests.DeviceTest.test_str) ... ok test_str_unpopulated (django_otp.plugins.otp_static.tests.DeviceTest.test_str_unpopulated) ... ok test_add_static_token (django_otp.plugins.otp_static.tests.LibTest.test_add_static_token) ... ok test_add_static_token_existing_device (django_otp.plugins.otp_static.tests.LibTest.test_add_static_token_existing_device) ... ok test_add_static_token_no_user (django_otp.plugins.otp_static.tests.LibTest.test_add_static_token_no_user) ... ok test_add_static_token_specific (django_otp.plugins.otp_static.tests.LibTest.test_add_static_token_specific) ... ok test_inline_instances_when_sensitive_information_hidden (django_otp.plugins.otp_static.tests.StaticDeviceAdminTest.test_inline_instances_when_sensitive_information_hidden) ... ok test_inline_instances_when_sensitive_information_shown (django_otp.plugins.otp_static.tests.StaticDeviceAdminTest.test_inline_instances_when_sensitive_information_shown) ... ok test_delay_after_fail_expires (django_otp.plugins.otp_static.tests.ThrottlingTestCase.test_delay_after_fail_expires) ... ok test_delay_imposed_after_fail (django_otp.plugins.otp_static.tests.ThrottlingTestCase.test_delay_imposed_after_fail) ... ok test_throttling_failure_count (django_otp.plugins.otp_static.tests.ThrottlingTestCase.test_throttling_failure_count) ... ok test_verify_is_allowed (django_otp.plugins.otp_static.tests.ThrottlingTestCase.test_verify_is_allowed) ... ok test_created_at_set_on_creation (django_otp.plugins.otp_static.tests.TimestampTestCase.test_created_at_set_on_creation) Verify that the `created_at` field is automatically set upon creation. ... ok test_last_used_at_initially_none (django_otp.plugins.otp_static.tests.TimestampTestCase.test_last_used_at_initially_none) Ensure `last_used_at` is None upon initial creation. ... ok test_set_last_used_timestamp_updates_field (django_otp.plugins.otp_static.tests.TimestampTestCase.test_set_last_used_timestamp_updates_field) Check if `set_last_used_timestamp` correctly updates the `last_used_at` field. ... ok test_set_last_used_timestamp_without_commit (django_otp.plugins.otp_static.tests.TimestampTestCase.test_set_last_used_timestamp_without_commit) Ensure `set_last_used_timestamp` updates `last_used_at` without persisting ... ok test_verify_token_failed_does_not_update_last_used_at (django_otp.plugins.otp_static.tests.TimestampTestCase.test_verify_token_failed_does_not_update_last_used_at) Verifying with an invalid token does not update 'last_used_at'. ... ok test_verify_token_successful_updates_last_used_at (django_otp.plugins.otp_static.tests.TimestampTestCase.test_verify_token_successful_updates_last_used_at) Verifying with a valid token updates 'last_used_at'. ... ok test_anonymous (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_anonymous) ... ok test_change_perm (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_change_perm) ... ok test_config_view_when_sensitive_information_hidden (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_config_view_when_sensitive_information_hidden) ... ok test_config_view_when_sensitive_information_shown (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_config_view_when_sensitive_information_shown) ... ok test_list_display_when_sensitive_information_hidden (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_list_display_when_sensitive_information_hidden) ... ok test_list_display_when_sensitive_information_shown (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_list_display_when_sensitive_information_shown) ... ok test_qrcode_view_when_sensitive_information_hidden (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_qrcode_view_when_sensitive_information_hidden) ... ok test_qrcode_view_when_sensitive_information_shown (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_qrcode_view_when_sensitive_information_shown) ... ok test_sensitive_information_hidden_while_adding_device (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_sensitive_information_hidden_while_adding_device) ... ok test_sensitive_information_hidden_while_changing_device (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_sensitive_information_hidden_while_changing_device) ... ok test_sensitive_information_shown_while_adding_device (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_sensitive_information_shown_while_adding_device) ... ok test_sensitive_information_shown_while_changing_device (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_sensitive_information_shown_while_changing_device) ... ok test_unauthorized (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_unauthorized) ... ok test_view_perm (django_otp.plugins.otp_totp.tests.TOTPAdminTest.test_view_perm) ... ok test_config_url (django_otp.plugins.otp_totp.tests.TOTPTest.test_config_url) ... ok test_config_url_image (django_otp.plugins.otp_totp.tests.TOTPTest.test_config_url_image) ... ok test_config_url_issuer (django_otp.plugins.otp_totp.tests.TOTPTest.test_config_url_issuer) ... ok test_config_url_issuer_method (django_otp.plugins.otp_totp.tests.TOTPTest.test_config_url_issuer_method) ... ok test_config_url_issuer_spaces (django_otp.plugins.otp_totp.tests.TOTPTest.test_config_url_issuer_spaces) ... ok test_default_key (django_otp.plugins.otp_totp.tests.TOTPTest.test_default_key) ... ok test_drift (django_otp.plugins.otp_totp.tests.TOTPTest.test_drift) ... ok test_no_reuse (django_otp.plugins.otp_totp.tests.TOTPTest.test_no_reuse) ... ok test_single (django_otp.plugins.otp_totp.tests.TOTPTest.test_single) ... ok test_sync_drift (django_otp.plugins.otp_totp.tests.TOTPTest.test_sync_drift) ... ok test_tolerance (django_otp.plugins.otp_totp.tests.TOTPTest.test_tolerance) ... ok test_delay_after_fail_expires (django_otp.plugins.otp_totp.tests.ThrottlingTestCase.test_delay_after_fail_expires) ... ok test_delay_imposed_after_fail (django_otp.plugins.otp_totp.tests.ThrottlingTestCase.test_delay_imposed_after_fail) ... ok test_throttling_failure_count (django_otp.plugins.otp_totp.tests.ThrottlingTestCase.test_throttling_failure_count) ... ok test_verify_is_allowed (django_otp.plugins.otp_totp.tests.ThrottlingTestCase.test_verify_is_allowed) ... ok test_created_at_set_on_creation (django_otp.plugins.otp_totp.tests.TimetstampTestCase.test_created_at_set_on_creation) Verify that the `created_at` field is automatically set upon creation. ... ok test_last_used_at_initially_none (django_otp.plugins.otp_totp.tests.TimetstampTestCase.test_last_used_at_initially_none) Ensure `last_used_at` is None upon initial creation. ... ok test_set_last_used_timestamp_updates_field (django_otp.plugins.otp_totp.tests.TimetstampTestCase.test_set_last_used_timestamp_updates_field) Check if `set_last_used_timestamp` correctly updates the `last_used_at` field. ... ok test_set_last_used_timestamp_without_commit (django_otp.plugins.otp_totp.tests.TimetstampTestCase.test_set_last_used_timestamp_without_commit) Ensure `set_last_used_timestamp` updates `last_used_at` without persisting ... ok test_verify_token_failed_does_not_update_last_used_at (django_otp.plugins.otp_totp.tests.TimetstampTestCase.test_verify_token_failed_does_not_update_last_used_at) Verifying with an invalid token does not update 'last_used_at'. ... ok test_verify_token_successful_updates_last_used_at (django_otp.plugins.otp_totp.tests.TimetstampTestCase.test_verify_token_successful_updates_last_used_at) Verifying with a valid token updates 'last_used_at'. ... ok test_match_token (django_otp.tests.APITestCase.test_match_token) ... ok test_user_has_device (django_otp.tests.APITestCase.test_user_has_device) ... ok test_verify_token (django_otp.tests.APITestCase.test_verify_token) ... ok test_existing_device (django_otp.tests.AddStaticTokenTestCase.test_existing_device) ... ok test_explicit_token (django_otp.tests.AddStaticTokenTestCase.test_explicit_token) ... ok test_new_device (django_otp.tests.AddStaticTokenTestCase.test_new_device) ... ok test_no_user (django_otp.tests.AddStaticTokenTestCase.test_no_user) ... ok test_admin_login_template (django_otp.tests.LoginViewTestCase.test_admin_login_template) ... ok test_authenticate (django_otp.tests.LoginViewTestCase.test_authenticate) ... ok test_verify (django_otp.tests.LoginViewTestCase.test_verify) ... ok test_no_device (django_otp.tests.OTPMiddlewareTestCase.test_no_device) ... ok test_no_model (django_otp.tests.OTPMiddlewareTestCase.test_no_model) ... ok test_pickling (django_otp.tests.OTPMiddlewareTestCase.test_pickling) ... ok test_unverified (django_otp.tests.OTPMiddlewareTestCase.test_unverified) ... ok test_verified (django_otp.tests.OTPMiddlewareTestCase.test_verified) ... ok test_verified_legacy_device_id (django_otp.tests.OTPMiddlewareTestCase.test_verified_legacy_device_id) ... ok test_wrong_user (django_otp.tests.OTPMiddlewareTestCase.test_wrong_user) ... ok test_concurrent_throttle_count (django_otp.tests.ConcurrencyTestCase.test_concurrent_throttle_count) ... skipped "Database doesn't support feature(s): has_select_for_update" test_match_token (django_otp.tests.ConcurrencyTestCase.test_match_token) ... skipped "Database doesn't support feature(s): has_select_for_update" test_serialized_throttling (django_otp.tests.ConcurrencyTestCase.test_serialized_throttling) ... skipped "Database doesn't support feature(s): has_select_for_update" test_verify_token (django_otp.tests.ConcurrencyTestCase.test_verify_token) ... skipped "Database doesn't support feature(s): has_select_for_update" hex_validator (django_otp.util) Doctest: django_otp.util.hex_validator ... ok TOTP (django_otp.oath) Doctest: django_otp.oath.TOTP ... ok hotp (django_otp.oath) Doctest: django_otp.oath.hotp ... ok totp (django_otp.oath) Doctest: django_otp.oath.totp ... ok ---------------------------------------------------------------------- Ran 151 tests in 80.263s OK (skipped=4) Destroying test database for alias 'default' ('file:memorydb_default?mode=memory&cache=shared')... >>> py3-django-otp: Entering fakeroot... >>> py3-django-otp-pyc*: Running split function pyc... '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_static/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_static/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_static/migrations/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_static/migrations/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_static/management/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_static/management/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_static/management/commands/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_static/management/commands/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_totp/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_totp/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_totp/migrations/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_totp/migrations/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_email/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_email/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_email/migrations/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_email/migrations/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_hotp/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_hotp/__pycache__' '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp/usr/lib/python3.12/site-packages/django_otp/plugins/otp_hotp/migrations/__pycache__' -> '/home/buildozer/aports/community/py3-django-otp/pkg/py3-django-otp-pyc/usr/lib/python3.12/site-packages/django_otp/plugins/otp_hotp/migrations/__pycache__' >>> py3-django-otp-pyc*: Preparing subpackage py3-django-otp-pyc... >>> py3-django-otp-pyc*: Running postcheck for py3-django-otp-pyc >>> py3-django-otp*: Running postcheck for py3-django-otp >>> py3-django-otp*: Preparing package py3-django-otp... >>> py3-django-otp-pyc*: Tracing dependencies... py3-django py3-qrcode python3~3.12 >>> py3-django-otp-pyc*: Package size: 512.0 KB >>> py3-django-otp-pyc*: Compressing data... >>> py3-django-otp-pyc*: Create checksum... >>> py3-django-otp-pyc*: Create py3-django-otp-pyc-1.5.0-r1.apk >>> py3-django-otp*: Tracing dependencies... py3-django py3-qrcode python3~3.12 >>> py3-django-otp*: Package size: 572.0 KB >>> py3-django-otp*: Compressing data... >>> py3-django-otp*: Create checksum... >>> py3-django-otp*: Create py3-django-otp-1.5.0-r1.apk >>> py3-django-otp: Build complete at Sun, 05 May 2024 23:24:01 +0000 elapsed time 0h 1m 23s >>> py3-django-otp: Cleaning up srcdir >>> py3-django-otp: Cleaning up pkgdir >>> py3-django-otp: Uninstalling dependencies... (1/70) Purging .makedepends-py3-django-otp (20240505.232239) (2/70) Purging py3-django-pyc (4.2.11-r1) (3/70) Purging py3-django (4.2.11-r1) (4/70) Purging py3-asgiref-pyc (3.8.1-r1) (5/70) Purging py3-asgiref (3.8.1-r1) (6/70) Purging py3-sqlparse-pyc (0.4.4-r2) (7/70) Purging py3-sqlparse (0.4.4-r2) (8/70) Purging tzdata (2024a-r1) (9/70) Purging py3-qrcode-pyc (7.4.2-r3) (10/70) Purging py3-qrcode (7.4.2-r3) (11/70) Purging py3-pillow-pyc (10.3.0-r2) (12/70) Purging py3-pillow (10.3.0-r2) (13/70) Purging py3-pypng-pyc (0.0.20-r5) (14/70) Purging py3-pypng (0.0.20-r5) (15/70) Purging py3-gpep517-pyc (15-r2) (16/70) Purging py3-gpep517 (15-r2) (17/70) Purging py3-installer-pyc (0.7.0-r2) (18/70) Purging py3-installer (0.7.0-r2) (19/70) Purging py3-setuptools-pyc (69.5.1-r0) (20/70) Purging py3-setuptools (69.5.1-r0) (21/70) Purging py3-wheel-pyc (0.42.0-r1) (22/70) Purging py3-wheel (0.42.0-r1) (23/70) Purging py3-hatchling-pyc (1.24.2-r0) (24/70) Purging py3-hatchling (1.24.2-r0) (25/70) Purging py3-editables-pyc (0.5-r2) (26/70) Purging py3-editables (0.5-r2) (27/70) Purging py3-packaging-pyc (24.0-r1) (28/70) Purging py3-packaging (24.0-r1) (29/70) Purging py3-parsing-pyc (3.1.2-r1) (30/70) Purging py3-parsing (3.1.2-r1) (31/70) Purging py3-pathspec-pyc (0.12.1-r2) (32/70) Purging py3-pathspec (0.12.1-r2) (33/70) Purging py3-pluggy-pyc (1.5.0-r0) (34/70) Purging py3-pluggy (1.5.0-r0) (35/70) Purging py3-trove-classifiers-pyc (2024.3.3-r2) (36/70) Purging py3-trove-classifiers (2024.3.3-r2) (37/70) Purging py3-freezegun-pyc (1.4.0-r1) (38/70) Purging py3-freezegun (1.4.0-r1) (39/70) Purging py3-dateutil-pyc (2.9.0-r1) (40/70) Purging py3-dateutil (2.9.0-r1) (41/70) Purging py3-six-pyc (1.16.0-r9) (42/70) Purging py3-six (1.16.0-r9) (43/70) Purging python3-pyc (3.12.3-r1) (44/70) Purging python3-pycache-pyc0 (3.12.3-r1) (45/70) Purging pyc (3.12.3-r1) (46/70) Purging python3 (3.12.3-r1) (47/70) Purging freetype (2.13.2-r0) (48/70) Purging gdbm (1.23-r1) (49/70) Purging lcms2 (2.16-r0) (50/70) Purging libbz2 (1.0.8-r6) (51/70) Purging libffi (3.4.6-r0) (52/70) Purging libimagequant (4.2.2-r0) (53/70) Purging libpanelw (6.4_p20240330-r0) (54/70) Purging libpng (1.6.43-r0) (55/70) Purging libwebpdemux (1.3.2-r0) (56/70) Purging libwebpmux (1.3.2-r0) (57/70) Purging libxcb (1.16.1-r0) (58/70) Purging libxdmcp (1.1.5-r1) (59/70) Purging mpdecimal (4.0.0-r0) (60/70) Purging openjpeg (2.5.2-r0) (61/70) Purging readline (8.2.10-r0) (62/70) Purging sqlite-libs (3.45.3-r0) (63/70) Purging tiff (4.6.0t-r0) (64/70) Purging xz-libs (5.6.1-r3) (65/70) Purging libbsd (0.12.2-r0) (66/70) Purging libjpeg-turbo (3.0.2-r0) (67/70) Purging libmd (1.1.0-r0) (68/70) Purging libwebp (1.3.2-r0) (69/70) Purging libsharpyuv (1.3.2-r0) (70/70) Purging libxau (1.0.11-r4) Executing busybox-1.36.1-r26.trigger OK: 347 MiB in 107 packages >>> py3-django-otp: Updating the community/s390x repository index... >>> py3-django-otp: Signing the index...