summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2023-04-07 16:59:48 +0200
committerMichał Górny <mgorny@gentoo.org>2023-04-07 17:06:26 +0200
commit35e9f3f0918bc4b0982c084521b042fb0f3c3ec8 (patch)
treecef022f12a8c850b9ab8ce2923d73ee0043c12e1 /dev-python/Babel
parentdev-ruby/patron: Keyword 0.13.3-r2 x86, #903712 (diff)
downloadgentoo-35e9f3f0918bc4b0982c084521b042fb0f3c3ec8.tar.gz
gentoo-35e9f3f0918bc4b0982c084521b042fb0f3c3ec8.tar.bz2
gentoo-35e9f3f0918bc4b0982c084521b042fb0f3c3ec8.zip
dev-python/Babel: Fix date-related test failures
Closes: https://bugs.gentoo.org/903971 Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/Babel')
-rw-r--r--dev-python/Babel/Babel-2.12.1.ebuild4
-rw-r--r--dev-python/Babel/files/Babel-2.12.1-dst-test.patch46
2 files changed, 50 insertions, 0 deletions
diff --git a/dev-python/Babel/Babel-2.12.1.ebuild b/dev-python/Babel/Babel-2.12.1.ebuild
index 818272ef77fa..943a3ce6af7f 100644
--- a/dev-python/Babel/Babel-2.12.1.ebuild
+++ b/dev-python/Babel/Babel-2.12.1.ebuild
@@ -44,6 +44,10 @@ distutils_enable_sphinx docs
distutils_enable_tests pytest
src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/${P}-dst-test.patch"
+ )
+
rm babel/locale-data/*.dat || die
rm babel/global.dat || die
distutils-r1_src_prepare
diff --git a/dev-python/Babel/files/Babel-2.12.1-dst-test.patch b/dev-python/Babel/files/Babel-2.12.1-dst-test.patch
new file mode 100644
index 000000000000..2a732854e7b1
--- /dev/null
+++ b/dev-python/Babel/files/Babel-2.12.1-dst-test.patch
@@ -0,0 +1,46 @@
+From 641f58c9951d9f5746cd63743dd337f1340d7bff Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Fri, 7 Apr 2023 14:51:10 +0000
+Subject: [PATCH] Freeze format_time() tests to a specific date to fix test
+ failures
+
+Freeze the date when performing the tests for format_time() with
+a timezone specified. Since the time object does not specify a date,
+the formatter uses the format string specific to the current date.
+As a result, if the current DST state is different than when the test
+was last updated, it failed.
+
+This fix covers only regular tests. I have no idea how to do the same
+for doctests.
+
+Issue #988
+---
+ tests/test_dates.py | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/tests/test_dates.py b/tests/test_dates.py
+index b94c710..3f1fc3f 100644
+--- a/tests/test_dates.py
++++ b/tests/test_dates.py
+@@ -601,12 +601,13 @@ def test_format_time(timezone_getter):
+ custom = dates.format_time(t, "hh 'o''clock' a, zzzz", tzinfo=eastern, locale='en')
+ assert custom == "09 o'clock AM, Eastern Daylight Time"
+
+- t = time(15, 30)
+- paris = dates.format_time(t, format='full', tzinfo=paris, locale='fr_FR')
+- assert paris == '15:30:00 heure normale d’Europe centrale'
++ with freezegun.freeze_time("2023-01-01"):
++ t = time(15, 30)
++ paris = dates.format_time(t, format='full', tzinfo=paris, locale='fr_FR')
++ assert paris == '15:30:00 heure normale d’Europe centrale'
+
+- us_east = dates.format_time(t, format='full', tzinfo=eastern, locale='en_US')
+- assert us_east == '3:30:00\u202fPM Eastern Standard Time'
++ us_east = dates.format_time(t, format='full', tzinfo=eastern, locale='en_US')
++ assert us_east == '3:30:00\u202fPM Eastern Standard Time'
+
+
+ def test_format_skeleton(timezone_getter):
+--
+2.40.0
+