              response = self.client.get('/jsi18n/')
              self.assertContains(response, 'il faut le traduire')
  
      def test_i18n_language_non_english_default(self):
          """
          Check if the Javascript i18n view returns an empty language catalog
          if the default language is non-English, the selected language
          is English and there is not 'en' translation available. See #13388,
 
</s> remove     # add the filesystem paths listed in the LOCALE_PATHS setting
    paths.extend(reversed(settings.LOCALE_PATHS))
    # first load all english languages files for defaults
    for path in paths:
        try:
            catalog = gettext_module.translation(domain, path, ['en'])
            t.update(catalog._catalog)
        except IOError:
            pass
        else:
            # 'en' is the selected language and at least one of the packages
            # listed in `packages` has an 'en' catalog
            if en_selected:
                en_catalog_missing = False
    # next load the settings.LANGUAGE_CODE translations if it isn't english
    if default_locale != 'en':
        for path in paths:
            try:
                catalog = gettext_module.translation(domain, path, [default_locale])
            except IOError:
                catalog = None
            if catalog is not None:
                t.update(catalog._catalog)
    # last load the currently selected language, if it isn't identical to the default.
    if locale != default_locale:
        # If the currently selected language is English but it doesn't have a
        # translation catalog (presumably due to being the language translated
        # from) then a wrong language catalog might have been loaded in the
        # previous step. It needs to be discarded.
        if en_selected and en_catalog_missing:
            t = {}
        else:
            locale_t = {}
            for path in paths:
                try:
                    catalog = gettext_module.translation(domain, path, [locale])
                except IOError:
                    catalog = None
                if catalog is not None:
                    locale_t.update(catalog._catalog)
            if locale_t:
                t = locale_t
 </s> add     trans = DjangoTranslation(locale, domain=domain, localedirs=paths)
    trans_cat = trans._catalog
 </s> remove         self._add_fallback()
 </s> add         self._add_fallback(localedirs) </s> remove         if self.__language == settings.LANGUAGE_CODE and self._catalog is None:
 </s> add         if (self.__language == settings.LANGUAGE_CODE and self.domain == 'django'
                and self._catalog is None): </s> remove     Returns a translation object.
 </s> add     Returns a translation object in the default 'django' domain. </s> remove     def __init__(self, language):
 </s> add     domain = 'django'

    def __init__(self, language, domain=None, localedirs=None):
            self.assertNotContains(response, "Untranslated string")
              response = self.client.get('/jsi18n/')
              self.assertContains(response, 'il faut le traduire')
            self.assertNotContains(response, "Untranslated string")
  
      def test_i18n_language_non_english_default(self):
          """
          Check if the Javascript i18n view returns an empty language catalog
          if the default language is non-English, the selected language
          is English and there is not 'en' translation available. See #13388,
keep add keep keep keep keep keep keep
 Reused the DjangoTranslation class for the javascript_catalog view

Thanks Tim Graham and Cristiano Coelho for the reviews.
Refs #26328, #26319. 
tests/view_tests/tests/test_i18n.py