Skip to content

Commit 85f3399

Browse files
Fix localisation test on Windows
(Yes, I've managed to build exiv2 on Windows with NLS support!)
1 parent c5ecc1c commit 85f3399

File tree

1 file changed

+10
-11
lines changed

1 file changed

+10
-11
lines changed

tests/test_types.py

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -115,27 +115,26 @@ def test_localisation(self):
115115
str_en = 'Failed to read input data'
116116
str_de = 'Die Eingabedaten konnten nicht gelesen werden.'
117117
# clear current locale
118-
locale.setlocale(locale.LC_MESSAGES, 'C')
118+
locale.setlocale(locale.LC_ALL, 'C')
119119
self.assertEqual(exiv2.exvGettext(str_en), str_en)
120120
# set German locale
121-
for name in ('de_DE.UTF-8', 'de_DE.utf8', 'de_DE', 'German'):
122-
try:
123-
locale.setlocale(locale.LC_MESSAGES, name)
124-
break
125-
except locale.Error:
126-
continue
121+
if sys.platform == 'win32':
122+
name = 'German'
127123
else:
124+
name = 'de_DE.UTF-8'
125+
try:
126+
locale.setlocale(locale.LC_ALL, name)
127+
except locale.Error:
128128
self.skipTest("failed to set locale")
129129
return
130-
print('setting locale', name)
130+
name = 'de_DE.UTF-8'
131131
os.environ['LC_ALL'] = name
132132
os.environ['LANG'] = name
133133
os.environ['LANGUAGE'] = name
134-
locale.setlocale(locale.LC_MESSAGES, '')
134+
locale.setlocale(locale.LC_ALL, '')
135135
name, encoding = locale.getdefaultlocale()
136-
if name != 'de_DE':
136+
if name != 'de_DE' and sys.platform != 'win32':
137137
self.skipTest("locale environment ignored")
138-
print('new locale', '.'.join((name, encoding)))
139138
# test localisation
140139
self.assertEqual(exiv2.exvGettext(str_en), str_de)
141140

0 commit comments

Comments
 (0)