add alternatives for deprecated utc datetime functions

This commit is contained in:
Mike Fährmann
2024-09-19 20:09:03 +02:00
parent a051e1c955
commit 2c7a0c3ca8
7 changed files with 68 additions and 19 deletions

View File

@@ -243,9 +243,12 @@ class TestExtractorWait(unittest.TestCase):
def test_wait_until_datetime(self):
extr = extractor.find("generic:https://example.org/")
until = datetime.utcnow() + timedelta(seconds=5)
until = util.datetime_utcnow() + timedelta(seconds=5)
until_local = datetime.now() + timedelta(seconds=5)
if not until.microsecond:
until = until.replace(microsecond=until_local.microsecond)
with patch("time.sleep") as sleep, patch.object(extr, "log") as log:
extr.wait(until=until)

View File

@@ -14,7 +14,7 @@ import unittest
import datetime
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from gallery_dl import text # noqa E402
from gallery_dl import text, util # noqa E402
INVALID = ((), [], {}, None, 1, 2.3)
@@ -414,8 +414,8 @@ class TestText(unittest.TestCase):
self.assertEqual(f(value), {})
def test_parse_timestamp(self, f=text.parse_timestamp):
null = datetime.datetime.utcfromtimestamp(0)
value = datetime.datetime.utcfromtimestamp(1555816235)
null = util.datetime_utcfromtimestamp(0)
value = util.datetime_utcfromtimestamp(1555816235)
self.assertEqual(f(0) , null)
self.assertEqual(f("0") , null)
@@ -427,7 +427,7 @@ class TestText(unittest.TestCase):
self.assertEqual(f(value, "foo"), "foo")
def test_parse_datetime(self, f=text.parse_datetime):
null = datetime.datetime.utcfromtimestamp(0)
null = util.datetime_utcfromtimestamp(0)
self.assertEqual(f("1970-01-01T00:00:00+00:00"), null)
self.assertEqual(f("1970-01-01T00:00:00+0000") , null)

View File

@@ -738,6 +738,22 @@ def hash(value):
self.assertEqual(f(datetime.datetime(2010, 1, 1)), "1262304000")
self.assertEqual(f(None), "")
def test_datetime_from_timestamp(
self, f=util.datetime_from_timestamp):
self.assertEqual(f(0.0), util.EPOCH)
self.assertEqual(f(1262304000.0), datetime.datetime(2010, 1, 1))
self.assertEqual(f(1262304000.128000).replace(microsecond=0),
datetime.datetime(2010, 1, 1, 0, 0, 0))
def test_datetime_utcfromtimestamp(
self, f=util.datetime_utcfromtimestamp):
self.assertEqual(f(0.0), util.EPOCH)
self.assertEqual(f(1262304000.0), datetime.datetime(2010, 1, 1))
def test_datetime_utcnow(
self, f=util.datetime_utcnow):
self.assertIsInstance(f(), datetime.datetime)
def test_universal_none(self):
obj = util.NONE