@@ -1301,6 +1301,44 @@ def getwarning(warnings):
13011301 return strip_escseq (warnings .getvalue ().replace (os .sep , '/' ))
13021302
13031303
1304+ @pytest .mark .sphinx ('html' , testroot = 'basic' ,
1305+ srcdir = 'gettext_allow_fuzzy_translations' ,
1306+ confoverrides = {
1307+ 'language' : 'de' ,
1308+ 'gettext_allow_fuzzy_translations' : True
1309+ })
1310+ def test_gettext_allow_fuzzy_translations (app ):
1311+ locale_dir = app .srcdir / 'locales' / 'de' / 'LC_MESSAGES'
1312+ locale_dir .makedirs ()
1313+ with (locale_dir / 'index.po' ).open ('wb' ) as f :
1314+ catalog = Catalog ()
1315+ catalog .add ('features' , 'FEATURES' , flags = ('fuzzy' ,))
1316+ pofile .write_po (f , catalog )
1317+
1318+ app .build ()
1319+ content = (app .outdir / 'index.html' ).read_text ()
1320+ assert 'FEATURES' in content
1321+
1322+
1323+ @pytest .mark .sphinx ('html' , testroot = 'basic' ,
1324+ srcdir = 'gettext_disallow_fuzzy_translations' ,
1325+ confoverrides = {
1326+ 'language' : 'de' ,
1327+ 'gettext_allow_fuzzy_translations' : False
1328+ })
1329+ def test_gettext_disallow_fuzzy_translations (app ):
1330+ locale_dir = app .srcdir / 'locales' / 'de' / 'LC_MESSAGES'
1331+ locale_dir .makedirs ()
1332+ with (locale_dir / 'index.po' ).open ('wb' ) as f :
1333+ catalog = Catalog ()
1334+ catalog .add ('features' , 'FEATURES' , flags = ('fuzzy' ,))
1335+ pofile .write_po (f , catalog )
1336+
1337+ app .build ()
1338+ content = (app .outdir / 'index.html' ).read_text ()
1339+ assert 'FEATURES' not in content
1340+
1341+
13041342@pytest .mark .sphinx ('html' , testroot = 'basic' , confoverrides = {'language' : 'de' })
13051343def test_customize_system_message (make_app , app_params , sphinx_test_tempdir ):
13061344 try :
0 commit comments