From 69cda1d2082444ed99836d92135f175d20555463 Mon Sep 17 00:00:00 2001 From: Aarni Koskela Date: Fri, 1 Mar 2019 13:38:31 +0200 Subject: Skip alt=... for week data (minDays, firstDay, weekendStart, weekendEnd) Fixes #624 --- scripts/import_cldr.py | 8 ++++++++ tests/test_dates.py | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/scripts/import_cldr.py b/scripts/import_cldr.py index a3e8f69..ed2e19c 100755 --- a/scripts/import_cldr.py +++ b/scripts/import_cldr.py @@ -520,18 +520,26 @@ def parse_dates(data, tree, sup, regions, territory): week_data = data.setdefault('week_data', {}) supelem = sup.find('.//weekData') for elem in supelem.findall('minDays'): + if _should_skip_elem(elem): + continue territories = elem.attrib['territories'].split() if territory in territories or any([r in territories for r in regions]): week_data['min_days'] = int(elem.attrib['count']) for elem in supelem.findall('firstDay'): + if _should_skip_elem(elem): + continue territories = elem.attrib['territories'].split() if territory in territories or any([r in territories for r in regions]): week_data['first_day'] = weekdays[elem.attrib['day']] for elem in supelem.findall('weekendStart'): + if _should_skip_elem(elem): + continue territories = elem.attrib['territories'].split() if territory in territories or any([r in territories for r in regions]): week_data['weekend_start'] = weekdays[elem.attrib['day']] for elem in supelem.findall('weekendEnd'): + if _should_skip_elem(elem): + continue territories = elem.attrib['territories'].split() if territory in territories or any([r in territories for r in regions]): week_data['weekend_end'] = weekdays[elem.attrib['day']] diff --git a/tests/test_dates.py b/tests/test_dates.py index d77c0ea..e859209 100644 --- a/tests/test_dates.py +++ b/tests/test_dates.py @@ -799,3 +799,9 @@ def test_russian_week_numbering(): v = date(2017, 1, 1) assert dates.format_date(v, format='YYYY-ww',locale='ru_RU') == '2016-52' # This would have returned 2017-01 prior to CLDR 32 assert dates.format_date(v, format='YYYY-ww',locale='de_DE') == '2016-52' + + +def test_en_gb_first_weekday(): + assert Locale.parse('en').first_week_day == 0 # Monday in general + assert Locale.parse('en_US').first_week_day == 6 # Sunday in the US + assert Locale.parse('en_GB').first_week_day == 0 # Monday in the UK \ No newline at end of file -- cgit v1.2.1