From dfe0e4b5acdf479f3e41e710c58218b6baf04f0e Mon Sep 17 00:00:00 2001
From: robot-piglet <robot-piglet@yandex-team.com>
Date: Sun, 17 Mar 2024 22:28:00 +0300
Subject: Intermediate changes

---
 .../py3/tests/property/test_isoparse_prop.py       | 27 ++++++++++++++++++++++
 1 file changed, 27 insertions(+)
 create mode 100644 contrib/python/python-dateutil/py3/tests/property/test_isoparse_prop.py

(limited to 'contrib/python/python-dateutil/py3/tests/property/test_isoparse_prop.py')

diff --git a/contrib/python/python-dateutil/py3/tests/property/test_isoparse_prop.py b/contrib/python/python-dateutil/py3/tests/property/test_isoparse_prop.py
new file mode 100644
index 0000000000..f8e288f3d6
--- /dev/null
+++ b/contrib/python/python-dateutil/py3/tests/property/test_isoparse_prop.py
@@ -0,0 +1,27 @@
+from hypothesis import given, assume
+from hypothesis import strategies as st
+
+from dateutil import tz
+from dateutil.parser import isoparse
+
+import pytest
+
+# Strategies
+TIME_ZONE_STRATEGY = st.sampled_from([None, tz.UTC] +
+    [tz.gettz(zname) for zname in ('US/Eastern', 'US/Pacific',
+                                   'Australia/Sydney', 'Europe/London')])
+ASCII_STRATEGY = st.characters(max_codepoint=127)
+
+
+@pytest.mark.isoparser
+@given(dt=st.datetimes(timezones=TIME_ZONE_STRATEGY), sep=ASCII_STRATEGY)
+def test_timespec_auto(dt, sep):
+    if dt.tzinfo is not None:
+        # Assume offset has no sub-second components
+        assume(dt.utcoffset().total_seconds() % 60 == 0)
+
+    sep = str(sep)          # Python 2.7 requires bytes
+    dtstr = dt.isoformat(sep=sep)
+    dt_rt = isoparse(dtstr)
+
+    assert dt_rt == dt
-- 
cgit v1.2.3