From 5ea9ee88aeabaf4f67b1ca51a9fc37e9dcf03e2f Mon Sep 17 00:00:00 2001 From: kaushikaryan04 Date: Sun, 30 Jun 2024 16:59:26 +0530 Subject: [PATCH] [change] delete_old_radiusbatch_users management command is inconsistent #525 changed the delete_old_radiusbatch_users management command to use days instead of months also modified tasks and tests to use days. Fixes #525 --- .../commands/base/delete_old_radiusbatch_users.py | 8 ++++---- openwisp_radius/settings.py | 2 +- openwisp_radius/tasks.py | 4 ++-- openwisp_radius/tests/test_commands.py | 2 +- openwisp_radius/tests/test_tasks.py | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/openwisp_radius/management/commands/base/delete_old_radiusbatch_users.py b/openwisp_radius/management/commands/base/delete_old_radiusbatch_users.py index b3504e7f..7a4985d9 100644 --- a/openwisp_radius/management/commands/base/delete_old_radiusbatch_users.py +++ b/openwisp_radius/management/commands/base/delete_old_radiusbatch_users.py @@ -14,17 +14,17 @@ class BaseDeleteOldRadiusBatchUsersCommand(BaseCommand): def add_arguments(self, parser): parser.add_argument( - '--older-than-months', + '--older-than-days', action='store', default=BATCH_DELETE_EXPIRED, help='delete users which have expired before this time', ) def handle(self, *args, **options): - months = now() - timedelta(days=30 * int(options['older_than_months'])) - batches = RadiusBatch.objects.filter(expiration_date__lt=months) + days = now() - timedelta(days=int(options['older_than_days'])) + batches = RadiusBatch.objects.filter(expiration_date__lt=days) for b in batches: b.delete() self.stdout.write( - f'Deleted accounts older than {options["older_than_months"]} months' + f'Deleted accounts older than {options["older_than_days"]} days' ) diff --git a/openwisp_radius/settings.py b/openwisp_radius/settings.py index 3d1db73d..b43e3306 100644 --- a/openwisp_radius/settings.py +++ b/openwisp_radius/settings.py @@ -45,7 +45,7 @@ def get_default_password_reset_url(urls): DEFAULT_SECRET_FORMAT = get_settings_value('DEFAULT_SECRET_FORMAT', 'NT-Password') DISABLED_SECRET_FORMATS = get_settings_value('DISABLED_SECRET_FORMATS', []) BATCH_DEFAULT_PASSWORD_LENGTH = get_settings_value('BATCH_DEFAULT_PASSWORD_LENGTH', 8) -BATCH_DELETE_EXPIRED = get_settings_value('BATCH_DELETE_EXPIRED', 18) +BATCH_DELETE_EXPIRED = get_settings_value('BATCH_DELETE_EXPIRED',30 * 18) BATCH_MAIL_SUBJECT = get_settings_value('BATCH_MAIL_SUBJECT', 'Credentials') BATCH_MAIL_SENDER = get_settings_value('BATCH_MAIL_SENDER', settings.DEFAULT_FROM_EMAIL) API_AUTHORIZE_REJECT = get_settings_value('API_AUTHORIZE_REJECT', False) diff --git a/openwisp_radius/tasks.py b/openwisp_radius/tasks.py index 85e34384..0a570d03 100644 --- a/openwisp_radius/tasks.py +++ b/openwisp_radius/tasks.py @@ -43,9 +43,9 @@ def deactivate_expired_users(): @shared_task -def delete_old_radiusbatch_users(older_than_months=12): +def delete_old_radiusbatch_users(older_than_days=365): management.call_command( - 'delete_old_radiusbatch_users', older_than_months=older_than_months + 'delete_old_radiusbatch_users', older_than_days=older_than_days ) diff --git a/openwisp_radius/tests/test_commands.py b/openwisp_radius/tests/test_commands.py index 14de1e9a..70d5dd2b 100644 --- a/openwisp_radius/tests/test_commands.py +++ b/openwisp_radius/tests/test_commands.py @@ -174,7 +174,7 @@ def test_delete_old_radiusbatch_users_command(self): self.assertEqual(get_user_model().objects.all().count(), 6) call_command('delete_old_radiusbatch_users') self.assertEqual(get_user_model().objects.all().count(), 3) - call_command('delete_old_radiusbatch_users', older_than_months=12) + call_command('delete_old_radiusbatch_users', older_than_days=365) self.assertEqual(get_user_model().objects.all().count(), 0) @capture_stdout() diff --git a/openwisp_radius/tests/test_tasks.py b/openwisp_radius/tests/test_tasks.py index 97d9459e..b7915a10 100644 --- a/openwisp_radius/tests/test_tasks.py +++ b/openwisp_radius/tests/test_tasks.py @@ -70,7 +70,7 @@ def test_deactivate_expired_users(self): def test_delete_old_radiusbatch_users(self): self._get_expired_user_from_radius_batch() self.assertEqual(User.objects.all().count(), 1) - result = tasks.delete_old_radiusbatch_users.delay(1) + result = tasks.delete_old_radiusbatch_users.delay(30) self.assertTrue(result.successful()) self.assertEqual(User.objects.all().count(), 0)