diff options
author | Sanyam Khurana <8039608+CuriousLearner@users.noreply.github.com> | 2019-06-14 21:50:29 +0530 |
---|---|---|
committer | Carlton Gibson <carlton.gibson@noumenal.es> | 2019-06-14 18:20:29 +0200 |
commit | 87f5d07eededc86f8ce1797fdfca7d4903ee0edc (patch) | |
tree | cb44a913de3732b615e76ef0444499558a00ffbd /tests/admin_utils | |
parent | 1564e42ad397021093585147875a21dae1a3b3fc (diff) | |
download | django-87f5d07eededc86f8ce1797fdfca7d4903ee0edc.tar.gz |
Fixed #12952 -- Adjusted admin log change messages to use form labels instead of field names.
Diffstat (limited to 'tests/admin_utils')
-rw-r--r-- | tests/admin_utils/admin.py | 19 | ||||
-rw-r--r-- | tests/admin_utils/test_logentry.py | 20 |
2 files changed, 30 insertions, 9 deletions
diff --git a/tests/admin_utils/admin.py b/tests/admin_utils/admin.py index a161322bc2..33c791769b 100644 --- a/tests/admin_utils/admin.py +++ b/tests/admin_utils/admin.py @@ -1,11 +1,30 @@ +from django import forms from django.contrib import admin from .models import Article, ArticleProxy, Site +class ArticleAdminForm(forms.ModelForm): + nolabel_form_field = forms.BooleanField(required=False) + + class Meta: + model = Article + fields = ['title'] + + @property + def changed_data(self): + data = super().changed_data + if data: + # Add arbitrary name to changed_data to test + # change message construction. + return data + ['not_a_form_field'] + return data + + class ArticleInline(admin.TabularInline): model = Article fields = ['title'] + form = ArticleAdminForm class SiteAdmin(admin.ModelAdmin): diff --git a/tests/admin_utils/test_logentry.py b/tests/admin_utils/test_logentry.py index b56b209433..c2dec073f4 100644 --- a/tests/admin_utils/test_logentry.py +++ b/tests/admin_utils/test_logentry.py @@ -53,9 +53,9 @@ class LogEntryTests(TestCase): response = self.client.post(change_url, post_data) self.assertRedirects(response, reverse('admin:admin_utils_article_changelist')) logentry = LogEntry.objects.filter(content_type__model__iexact='article').latest('id') - self.assertEqual(logentry.get_change_message(), 'Changed title and hist.') + self.assertEqual(logentry.get_change_message(), 'Changed Title and History.') with translation.override('fr'): - self.assertEqual(logentry.get_change_message(), 'Modification de title et hist.') + self.assertEqual(logentry.get_change_message(), 'Modification de Title et Historique.') add_url = reverse('admin:admin_utils_article_add') post_data['title'] = 'New' @@ -85,7 +85,7 @@ class LogEntryTests(TestCase): response = self.client.post(change_url, post_data) self.assertRedirects(response, reverse('admin:admin_utils_article_changelist')) logentry = LogEntry.objects.filter(content_type__model__iexact='article').latest('id') - self.assertEqual(logentry.get_change_message(), 'Changed title and hist.') + self.assertEqual(logentry.get_change_message(), 'Changed Title and History.') def test_logentry_change_message_formsets(self): """ @@ -123,23 +123,25 @@ class LogEntryTests(TestCase): self.assertEqual( json.loads(logentry.change_message), [ - {"changed": {"fields": ["domain"]}}, + {"changed": {"fields": ["Domain"]}}, {"added": {"object": "Added article", "name": "article"}}, - {"changed": {"fields": ["title"], "object": "Changed Title", "name": "article"}}, + {"changed": {"fields": ["Title", "not_a_form_field"], "object": "Changed Title", "name": "article"}}, {"deleted": {"object": "Title second article", "name": "article"}}, ] ) self.assertEqual( logentry.get_change_message(), - 'Changed domain. Added article "Added article". ' - 'Changed title for article "Changed Title". Deleted article "Title second article".' + 'Changed Domain. Added article "Added article". ' + 'Changed Title and not_a_form_field for article "Changed Title". ' + 'Deleted article "Title second article".' ) with translation.override('fr'): self.assertEqual( logentry.get_change_message(), - "Modification de domain. Ajout de article « Added article ». " - "Modification de title pour l'objet article « Changed Title ». " + "Modification de Domain. Ajout de article « Added article ». " + "Modification de Title et not_a_form_field pour l'objet " + "article « Changed Title ». " "Suppression de article « Title second article »." ) |