1
0
Fork 0

Compare commits

...

2 Commits

Author SHA1 Message Date
Tomek Wójcik 68b423a022 v1.0.3 2021-12-07 19:30:05 +01:00
Tomek Wójcik 9c122a4e51 Django 4.0 compat. 2021-12-07 19:24:55 +01:00
4 changed files with 29 additions and 26 deletions

3
django_changelist_inline/admin.py Executable file → Normal file
View File

@ -38,6 +38,9 @@ class ChangelistInlineModelAdmin(admin.ModelAdmin):
self.sortable_by = () self.sortable_by = ()
self.show_full_result_count = False self.show_full_result_count = False
if hasattr(self, 'search_help_text') is True:
self.search_help_text = None
def get_actions(self, request): def get_actions(self, request):
return [] return []

2
setup.py Executable file → Normal file
View File

@ -27,7 +27,7 @@ PACKAGES = find_packages(
setup( setup(
name='django-changelist-inline', name='django-changelist-inline',
version='1.0.2', version='1.0.3',
url='https://git.bthlabs.pl/tomekwojcik/django-changelist-inline', url='https://git.bthlabs.pl/tomekwojcik/django-changelist-inline',
license='Other/Proprietary License', license='Other/Proprietary License',
author='Tomek Wójcik', author='Tomek Wójcik',

View File

@ -30,6 +30,10 @@ class ChangelistInlineModelAdminTestCase(TestCase):
self.assertIsNone(model_admin.date_hierarchy) self.assertIsNone(model_admin.date_hierarchy)
self.assertEqual(model_admin.sortable_by, ()) self.assertEqual(model_admin.sortable_by, ())
# Account for `search_help_text` attr added in Django 4.0
if hasattr(model_admin, 'search_help_text'):
self.assertIsNone(model_admin.search_help_text)
@mock.patch('django.contrib.admin.ModelAdmin.get_actions') @mock.patch('django.contrib.admin.ModelAdmin.get_actions')
def test_get_actions(self, mock_get_actions): def test_get_actions(self, mock_get_actions):
# Given # Given

View File

@ -1,6 +1,8 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from distutils.version import StrictVersion
from unittest import mock from unittest import mock
import django
from django.contrib import admin from django.contrib import admin
from django.contrib.auth.models import User from django.contrib.auth.models import User
from django.http import HttpRequest from django.http import HttpRequest
@ -33,12 +35,21 @@ class InlineChangeListTestCase(TestCase):
thing, RelatedThing, admin.site, thing, RelatedThing, admin.site,
) )
def test_init(self): def _get_change_list_args(self):
# When result = [
change_list = InlineChangeList(
self.fake_request, Thing, ['pk'], ['pk'], [], None, None, None, 5, self.fake_request, Thing, ['pk'], ['pk'], [], None, None, None, 5,
5, None, self.model_admin, None, 5, None, self.model_admin, None,
) ]
django_version = StrictVersion(django.__version__)
if django_version.version[0] >= 4:
result.append(None) # Account for the new `search_help_text` arg
return result
def test_init(self):
# When
change_list = InlineChangeList(*self._get_change_list_args())
# Then # Then
self.assertIsNone(change_list.formset) self.assertIsNone(change_list.formset)
@ -51,11 +62,8 @@ class InlineChangeListTestCase(TestCase):
self.assertIsNone(change_list.toolbar_links) self.assertIsNone(change_list.toolbar_links)
def test_get_filters_params(self): def test_get_filters_params(self):
# Give # Given
change_list = InlineChangeList( change_list = InlineChangeList(*self._get_change_list_args())
self.fake_request, Thing, ['pk'], ['pk'], [], None, None, None, 5,
5, None, self.model_admin, None,
)
# When # When
result = change_list.get_filters_params(params={'q': 'spam'}) result = change_list.get_filters_params(params={'q': 'spam'})
@ -65,10 +73,7 @@ class InlineChangeListTestCase(TestCase):
def test_has_toolbar_False(self): def test_has_toolbar_False(self):
# Given # Given
change_list = InlineChangeList( change_list = InlineChangeList(*self._get_change_list_args())
self.fake_request, Thing, ['pk'], ['pk'], [], None, None, None, 5,
5, None, self.model_admin, None,
)
change_list.add_url = None change_list.add_url = None
change_list.show_all_url = None change_list.show_all_url = None
change_list.toolbar_links = None change_list.toolbar_links = None
@ -78,10 +83,7 @@ class InlineChangeListTestCase(TestCase):
def test_has_toolbar_True_with_add_url(self): def test_has_toolbar_True_with_add_url(self):
# Given # Given
change_list = InlineChangeList( change_list = InlineChangeList(*self._get_change_list_args())
self.fake_request, Thing, ['pk'], ['pk'], [], None, None, None, 5,
5, None, self.model_admin, None,
)
change_list.add_url = 'add_url' change_list.add_url = 'add_url'
change_list.show_all_url = None change_list.show_all_url = None
change_list.toolbar_links = None change_list.toolbar_links = None
@ -91,10 +93,7 @@ class InlineChangeListTestCase(TestCase):
def test_has_toolbar_True_with_show_all_url(self): def test_has_toolbar_True_with_show_all_url(self):
# Given # Given
change_list = InlineChangeList( change_list = InlineChangeList(*self._get_change_list_args())
self.fake_request, Thing, ['pk'], ['pk'], [], None, None, None, 5,
5, None, self.model_admin, None,
)
change_list.add_url = None change_list.add_url = None
change_list.show_all_url = 'show_all_url' change_list.show_all_url = 'show_all_url'
change_list.toolbar_links = None change_list.toolbar_links = None
@ -104,10 +103,7 @@ class InlineChangeListTestCase(TestCase):
def test_has_toolbar_True_with_toolbar_links(self): def test_has_toolbar_True_with_toolbar_links(self):
# Given # Given
change_list = InlineChangeList( change_list = InlineChangeList(*self._get_change_list_args())
self.fake_request, Thing, ['pk'], ['pk'], [], None, None, None, 5,
5, None, self.model_admin, None,
)
change_list.add_url = None change_list.add_url = None
change_list.show_all_url = None change_list.show_all_url = None
change_list.toolbar_links = 'toolbar_links' change_list.toolbar_links = 'toolbar_links'