mirror of
https://github.com/django/django.git
synced 2025-07-29 16:14:18 +00:00
Fixed #29452 -- Fixed makemessages setting charset of .pot files.
This commit is contained in:
parent
bc1435551c
commit
2bc014750a
3 changed files with 26 additions and 3 deletions
|
@ -1,6 +1,7 @@
|
|||
import os
|
||||
import re
|
||||
import shutil
|
||||
import tempfile
|
||||
import time
|
||||
import warnings
|
||||
from io import StringIO
|
||||
|
@ -12,7 +13,7 @@ from django.core import management
|
|||
from django.core.management import execute_from_command_line
|
||||
from django.core.management.base import CommandError
|
||||
from django.core.management.commands.makemessages import (
|
||||
Command as MakeMessagesCommand,
|
||||
Command as MakeMessagesCommand, write_pot_file,
|
||||
)
|
||||
from django.core.management.utils import find_command
|
||||
from django.test import SimpleTestCase, override_settings
|
||||
|
@ -394,6 +395,26 @@ class BasicExtractorTests(ExtractorTests):
|
|||
po_contents = fp.read()
|
||||
self.assertMsgStr("Größe", po_contents)
|
||||
|
||||
def test_pot_charset_header_is_utf8(self):
|
||||
"""Content-Type: ... charset=CHARSET is replaced with charset=UTF-8"""
|
||||
msgs = (
|
||||
'# SOME DESCRIPTIVE TITLE.\n'
|
||||
'# (some lines truncated as they are not relevant)\n'
|
||||
'"Content-Type: text/plain; charset=CHARSET\\n"\n'
|
||||
'"Content-Transfer-Encoding: 8bit\\n"\n'
|
||||
'\n'
|
||||
'#: somefile.py:8\n'
|
||||
'msgid "mañana; charset=CHARSET"\n'
|
||||
'msgstr ""\n'
|
||||
)
|
||||
with tempfile.NamedTemporaryFile() as pot_file:
|
||||
pot_filename = pot_file.name
|
||||
write_pot_file(pot_filename, msgs)
|
||||
with open(pot_filename, 'r', encoding='utf-8') as fp:
|
||||
pot_contents = fp.read()
|
||||
self.assertIn('Content-Type: text/plain; charset=UTF-8', pot_contents)
|
||||
self.assertIn('mañana; charset=CHARSET', pot_contents)
|
||||
|
||||
|
||||
class JavascriptExtractorTests(ExtractorTests):
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue