diff --git a/.travis.yml b/.travis.yml index 20d45368b..cf0f424fa 100644 --- a/.travis.yml +++ b/.travis.yml @@ -52,6 +52,11 @@ cache: - directories: - $HOME/.pyenv_cache +addons: + apt: + packages: + - language-pack-de + before_install: - source ./.travis/before_install.sh diff --git a/Tests/misc/timeTools_test.py b/Tests/misc/timeTools_test.py index e3ad3f6d2..601f357b8 100644 --- a/Tests/misc/timeTools_test.py +++ b/Tests/misc/timeTools_test.py @@ -1,7 +1,8 @@ from fontTools.misc.py23 import * -from fontTools.misc.timeTools import asctime, timestampNow, epoch_diff +from fontTools.misc.timeTools import asctime, timestampNow, timestampToString, timestampFromString, epoch_diff import os import time +import locale import pytest @@ -21,3 +22,17 @@ def test_source_date_epoch(): del os.environ["SOURCE_DATE_EPOCH"] assert timestampNow() + epoch_diff != 150687315 + + +# test for issue #1838 +def test_date_parsing_with_locale(): + l = locale.getlocale(locale.LC_TIME) + try: + locale.setlocale(locale.LC_TIME, 'de_DE.utf8') + except locale.Error: + pytest.skip("Locale de_DE not available") + + try: + assert timestampFromString(timestampToString(timestampNow())) + finally: + locale.setlocale(locale.LC_TIME, l)