From 4cf9d004bf3ecdd3e8377adea123c633438b1913 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Sat, 23 Jul 2022 00:30:06 +0200 Subject: [PATCH] Tests: Use UTC-based `utcnow().date()` instead of local `date.today()` `datetime.date.today()` returns the current local date. In order to reduce test flakyness when comparing UTC-based datetimes with localtime- based variants, `datetime.utcnow().date()` is a better choice. --- src/crate/client/sqlalchemy/doctests/itests.txt | 2 +- src/crate/client/tests.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/crate/client/sqlalchemy/doctests/itests.txt b/src/crate/client/sqlalchemy/doctests/itests.txt index 6f285610..f9e2d09e 100644 --- a/src/crate/client/sqlalchemy/doctests/itests.txt +++ b/src/crate/client/sqlalchemy/doctests/itests.txt @@ -105,7 +105,7 @@ aren't set when the row is inserted as there is no default method:: The datetime and date can be set using a update statement:: - >>> location.nullable_date = datetime.today() + >>> location.nullable_date = datetime.utcnow().date() >>> location.nullable_datetime = datetime.utcnow() >>> session.flush() diff --git a/src/crate/client/tests.py b/src/crate/client/tests.py index fe0a8300..e0abafd2 100644 --- a/src/crate/client/tests.py +++ b/src/crate/client/tests.py @@ -27,7 +27,7 @@ import unittest import doctest from pprint import pprint -from datetime import datetime, date +from datetime import datetime from http.server import HTTPServer, BaseHTTPRequestHandler import ssl import time @@ -213,7 +213,7 @@ class Location(Base): __tablename__ = 'locations' name = sa.Column(sa.String, primary_key=True) kind = sa.Column(sa.String) - date = sa.Column(sa.Date, default=date.today) + date = sa.Column(sa.Date, default=lambda: datetime.utcnow().date()) datetime_tz = sa.Column(sa.DateTime, default=datetime.utcnow) datetime_notz = sa.Column(sa.DateTime, default=datetime.utcnow) nullable_datetime = sa.Column(sa.DateTime)