test: localize home widget tests and update admin display to use mark_safe for conditions overview
This commit is contained in:
parent
2ca72aa4da
commit
63e22c3166
2 changed files with 26 additions and 2 deletions
|
|
@ -58,7 +58,7 @@ class HomeWidgetAdmin(admin.ModelAdmin):
|
||||||
groups = obj.condition_groups.filter(is_active=True).order_by('priority')
|
groups = obj.condition_groups.filter(is_active=True).order_by('priority')
|
||||||
|
|
||||||
if not groups.exists():
|
if not groups.exists():
|
||||||
return format_html(
|
return mark_safe(
|
||||||
'<span style="color: #999; font-style: italic;">Aucun groupe — visible pour tous</span>'
|
'<span style="color: #999; font-style: italic;">Aucun groupe — visible pour tous</span>'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -245,10 +245,34 @@ class HomeIndexViewTests(TestCase):
|
||||||
# Create the widget
|
# Create the widget
|
||||||
HomeWidget.objects.create(widget_code='intervention_on_pause')
|
HomeWidget.objects.create(widget_code='intervention_on_pause')
|
||||||
|
|
||||||
response = self.client.get(reverse('home:index'))
|
response = self.client.get(reverse('home:index'), HTTP_ACCEPT_LANGUAGE='fr')
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
self.assertContains(response, 'Interventions en pause')
|
self.assertContains(response, 'Interventions en pause')
|
||||||
self.assertContains(response, 'status=on_pause')
|
self.assertContains(response, 'status=on_pause')
|
||||||
|
|
||||||
|
|
||||||
|
class HomeWidgetAdminTests(TestCase):
|
||||||
|
def setUp(self):
|
||||||
|
from django.contrib.admin.sites import AdminSite
|
||||||
|
from home.admin import HomeWidgetAdmin
|
||||||
|
self.site = AdminSite()
|
||||||
|
self.admin = HomeWidgetAdmin(HomeWidget, self.site)
|
||||||
|
self.widget = HomeWidget.objects.create(widget_code='intervention_stats')
|
||||||
|
|
||||||
|
def test_conditions_overview_no_groups(self):
|
||||||
|
html = self.admin.conditions_overview(self.widget)
|
||||||
|
self.assertIn('Aucun groupe — visible pour tous', html)
|
||||||
|
|
||||||
|
def test_conditions_overview_with_groups(self):
|
||||||
|
group = HomeWidgetConditionGroup.objects.create(
|
||||||
|
widget=self.widget,
|
||||||
|
label='Group 1',
|
||||||
|
order=1,
|
||||||
|
priority=1
|
||||||
|
)
|
||||||
|
html = self.admin.conditions_overview(self.widget)
|
||||||
|
self.assertIn('Group 1', html)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue