#34878: Autoreload crashes with
FORM_RENDERER="django.forms.renderers.TemplatesSetting".
---------------------------------+------------------------------------
     Reporter:  danjac           |                    Owner:  nobody
         Type:  Bug              |                   Status:  new
    Component:  Template system  |                  Version:  5.0
     Severity:  Release blocker  |               Resolution:
     Keywords:                   |             Triage Stage:  Accepted
    Has patch:  0                |      Needs documentation:  0
  Needs tests:  0                |  Patch needs improvement:  0
Easy pickings:  1                |                    UI/UX:  0
---------------------------------+------------------------------------
Changes (by Mariusz Felisiak):

 * easy:  0 => 1


Comment:

 The following could be a regression test:
 {{{#!diff
 diff --git a/tests/template_tests/test_autoreloader.py
 b/tests/template_tests/test_autoreloader.py
 index 4fd7549a70..91ef94406c 100644
 --- a/tests/template_tests/test_autoreloader.py
 +++ b/tests/template_tests/test_autoreloader.py
 @@ -1,6 +1,7 @@
  from pathlib import Path
  from unittest import mock

 +from django.forms.renderers import get_default_renderer
  from django.template import autoreload
  from django.test import SimpleTestCase, override_settings
  from django.test.utils import require_jinja2
 @@ -68,6 +69,17 @@ class TemplateReloadTests(SimpleTestCase):
          self.assertIs(autoreload.template_changed(None, template_path),
 True)
          mock_loader_reset.assert_called_once()

 +
 @override_settings(FORM_RENDERER="django.forms.renderers.TemplatesSetting")
 +    @mock.patch("django.template.loaders.cached.Loader.reset")
 +    def test_form_template_reset_template_change_no_djangotemplates(
 +        self, mock_loader_reset,
 +    ):
 +        get_default_renderer.cache_clear()
 +        template_path = Path(__file__).parent / "templates" /
 "index.html"
 +        self.assertIs(autoreload.template_changed(None, template_path),
 True)
 +        mock_loader_reset.assert_not_called()
 +        get_default_renderer.cache_clear()
 +
      @mock.patch("django.forms.renderers.get_default_renderer")
      def test_form_template_reset_non_template_change(self,
 mock_renderer):
          self.assertIsNone(autoreload.template_changed(None,
 Path(__file__)))

 }}}

-- 
Ticket URL: <https://code.djangoproject.com/ticket/34878#comment:4>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/0107018adac622bd-8984c546-e581-44e0-ad00-a507486cc691-000000%40eu-central-1.amazonses.com.

Reply via email to