From b46a5915a606db04bbef0aa82e126db8f2096cd8 Mon Sep 17 00:00:00 2001 From: Lucas Brandstaetter <lucas@brandstaetter.tech> Date: Mon, 25 Nov 2024 03:15:21 +0100 Subject: [PATCH] Fix pylint errors - Fix missing function arguments - Fix wrong imports - Fix wrong variable defintions - Fix wrong inheritance --- src/api/tests/permissions.py | 2 +- src/backoffice/views/assemblies/assemblies.py | 2 +- src/core/integrations/workadventure.py | 1 + src/core/management/commands/sanitize_database.py | 7 ++++--- src/core/models/badges.py | 7 +++---- src/core/models/messages.py | 4 ++-- src/core/models/pages.py | 2 +- src/core/tests/exportcache.py | 7 +++---- src/plainui/tests/test_views.py | 4 ++-- src/plainui/utils.py | 1 + 10 files changed, 19 insertions(+), 18 deletions(-) diff --git a/src/api/tests/permissions.py b/src/api/tests/permissions.py index 92fef7d75..87c9010eb 100644 --- a/src/api/tests/permissions.py +++ b/src/api/tests/permissions.py @@ -135,7 +135,7 @@ class ConferencePermissionTestCase(PermissionTestCase): self.conference = self.view.conference = Conference.objects.create(slug='conf', name='TestConf', is_public=True) -class ConferenceDetectionTestCase(PermissionTestCase): +class ConferenceDetectionTestCase(ConferencePermissionTestCase): def test_get_conference_view(self): self.assertEqual(ConferencePermission().get_conference(view=self.view), self.conference) diff --git a/src/backoffice/views/assemblies/assemblies.py b/src/backoffice/views/assemblies/assemblies.py index 9bffb30f5..06bbe8537 100644 --- a/src/backoffice/views/assemblies/assemblies.py +++ b/src/backoffice/views/assemblies/assemblies.py @@ -402,7 +402,7 @@ class AssemblyLinksUpdateView(AssemblyMixin, View): if link_created: messages.success(request, gettext('assemblyedit_addedlink').format(linked_name=linkee.name)) logger.info( - 'Assembly "%(assembly_name)s" (%(assembly_pk)s): added link to "%(linkee)s" (%(linkee_pk)s), requested by {%(user)s.' + 'Assembly "%(assembly_name)s" (%(assembly_pk)s): added link to "%(linkee)s" (%(linkee_pk)s), requested by {%(user)s}.' 'Not from this assembly', {'assembly_name': assembly.name, 'assembly_pk': assembly.pk, 'linkee': linkee, 'linkee_pk': linkee.pk, 'user': request.user.username}, ) diff --git a/src/core/integrations/workadventure.py b/src/core/integrations/workadventure.py index 094bed765..461339ba1 100644 --- a/src/core/integrations/workadventure.py +++ b/src/core/integrations/workadventure.py @@ -264,6 +264,7 @@ class WorkAdventureIntegration: linter_errors = None linter_missingassets = None linter_missingentrypoints = None + linter_exitgraph = None publish_timestamp = None publish_commit = None has_mapinfo = False diff --git a/src/core/management/commands/sanitize_database.py b/src/core/management/commands/sanitize_database.py index 0b56489e4..c9b268407 100644 --- a/src/core/management/commands/sanitize_database.py +++ b/src/core/management/commands/sanitize_database.py @@ -4,7 +4,8 @@ from django.conf import settings from django.core.management.base import BaseCommand from django.db.models import Max -from core.models.assemblies import Assembly, AssemblyLogEntry, AssemblyMember +from core.models.activitylog import ActivityLogEntry +from core.models.assemblies import Assembly, AssemblyMember from core.models.badges import UserBadge from core.models.conference import ( ConferenceMember, @@ -60,8 +61,8 @@ class Command(BaseCommand): print('Assembly(technical_user:=None): ', end='', flush=True) print(Assembly.objects.exclude(technical_user=None).update(technical_user=None)) - print('AssemblyLogEntry: ', end='', flush=True) - print_delete_stat(AssemblyLogEntry.objects.all().delete()) + print('ActivityLogEntry: ', end='', flush=True) + print_delete_stat(ActivityLogEntry.objects.all().delete()) print('ConferenceMembers: ', end='', flush=True) print_delete_stat(ConferenceMember.objects.all().delete()) diff --git a/src/core/models/badges.py b/src/core/models/badges.py index fcee09d49..cbaedb7fc 100644 --- a/src/core/models/badges.py +++ b/src/core/models/badges.py @@ -185,10 +185,9 @@ class Badge(models.Model): return self.state == self.State.PUBLIC def save(self, update_fields=None, *args, **kwargs): - if self.conference_id is None and self.issuing_assembly_id is not None: - self.conference_id = self.issuing_assembly.conference_id - - elif self.conference_id != self.issuing_assembly.conference_id: + if not hasattr(self, 'conference') and hasattr(self, 'issuing_assembly'): + self.conference = self.issuing_assembly.conference + elif hasattr(self, 'conference') and self.conference != self.issuing_assembly.conference: raise ValidationError(_('Badge__issuing_assembly__wrong_conference')) if update_fields is None or 'description' in update_fields: render_results = compile_translated_markdown_fields(self, self.conference, 'description') diff --git a/src/core/models/messages.py b/src/core/models/messages.py index edcb87f3e..28e424ce9 100644 --- a/src/core/models/messages.py +++ b/src/core/models/messages.py @@ -87,7 +87,7 @@ class DirectMessage(models.Model): ctx = { 'conference': self.conference, 'subject': self.subject, - 'message': self.message, + 'message': self.body, 'timestamp': self.timestamp, 'sender': str(self.sender) if self.sender is not None else None, 'recipient': str(self.recipient) if self.recipient is not None else None, @@ -96,7 +96,7 @@ class DirectMessage(models.Model): body_text = render_to_string('core/directmessage.txt', ctx) if settings.SUPPORT_HTML_MAILS: - ctx['message_html'] = render_markdown(self.body) + ctx['message_html'] = render_markdown(self.conference, self.body) body_html = render_to_string('core/directmessage.html', ctx) else: body_html = None diff --git a/src/core/models/pages.py b/src/core/models/pages.py index e4c37ddf1..257ca1333 100644 --- a/src/core/models/pages.py +++ b/src/core/models/pages.py @@ -326,7 +326,7 @@ class StaticPage(models.Model): def newest_revision(self): try: return self.revisions.order_by('-revision').first() - except models.DoesNotExist: + except StaticPageRevision.DoesNotExist: return None def clean(self, *args, **kwargs): diff --git a/src/core/tests/exportcache.py b/src/core/tests/exportcache.py index 72e57d7e4..a62ffc4c8 100644 --- a/src/core/tests/exportcache.py +++ b/src/core/tests/exportcache.py @@ -1,7 +1,6 @@ -from datetime import datetime, timedelta +from datetime import UTC, datetime, timedelta from django.test import TestCase, override_settings -from django.utils import timezone from django.utils.timezone import now from core.models.assemblies import Assembly @@ -13,8 +12,8 @@ class ScheduleTests(TestCase): self.conference = Conference( slug='foo', name='Foo Conference', - start=datetime(2021, 12, 1, 9, 0, 0, tzinfo=timezone.utc), - end=datetime(2021, 12, 31, 15, 00, 00, tzinfo=timezone.utc), + start=datetime(2021, 12, 1, 9, 0, 0, tzinfo=UTC), + end=datetime(2021, 12, 31, 15, 00, 00, tzinfo=UTC), ) self.conference.save() diff --git a/src/plainui/tests/test_views.py b/src/plainui/tests/test_views.py index a7ca15956..e9002f0c7 100644 --- a/src/plainui/tests/test_views.py +++ b/src/plainui/tests/test_views.py @@ -131,8 +131,8 @@ class ViewsTestBase(TestCase): This is the test pendant to `plainui.views.ConferenceRequiredMixin`. """ + old_cookies = self.client.cookies try: - old_cookies = self.client.cookies self.client.cookies = SimpleCookie() ConferenceRequiredMixin._test_cork = True _request = self.client.post if post else self.client.get @@ -192,8 +192,8 @@ class ViewsTestBase(TestCase): ConferenceRequiredMixin._conf = None def assertNeedsNoLogin(self, url, data=None, post=False): + old_cookies = self.client.cookies try: - old_cookies = self.client.cookies self.client.cookies = SimpleCookie() ConferenceRequiredMixin._test_cork = True _request = self.client.post if post else self.client.get diff --git a/src/plainui/utils.py b/src/plainui/utils.py index 5228e53df..08c243bd7 100644 --- a/src/plainui/utils.py +++ b/src/plainui/utils.py @@ -62,6 +62,7 @@ def check_message_content(conf, request, text, kind, kind_data): report_form = ReportForm( conf=conf, + request=request, data={ 'kind': kind, 'kind_data': str(kind_data), -- GitLab