Skip to content

Commit 3874f6e

Browse files
authored
Replace deprecated utc method + adapt unit tests (#62)
1 parent f6e77a9 commit 3874f6e

File tree

2 files changed

+14
-14
lines changed

2 files changed

+14
-14
lines changed

simplefix/message.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -145,13 +145,13 @@ def append_time(self, tag, timestamp=None, precision=3, utc=True,
145145
"Use append_utc_timestamp() or append_tz_timestamp() "
146146
"instead.", DeprecationWarning)
147147
if not timestamp:
148-
t = datetime.datetime.utcnow()
148+
t = datetime.datetime.now(datetime.timezone.utc)
149149

150150
elif type(timestamp) is float:
151151
if utc:
152-
t = datetime.datetime.utcfromtimestamp(timestamp)
152+
t = datetime.datetime.fromtimestamp(timestamp, tz=datetime.timezone.utc)
153153
else:
154-
t = datetime.datetime.fromtimestamp(timestamp)
154+
t = datetime.datetime.fromtimestamp(timestamp, tz=datetime.datetime.now().astimezone().tzinfo)
155155

156156
else:
157157
t = timestamp
@@ -169,9 +169,9 @@ def append_time(self, tag, timestamp=None, precision=3, utc=True,
169169
def _append_utc_datetime(self, tag, fmt, ts, precision, header):
170170
"""(Internal) Append formatted datetime."""
171171
if ts is None:
172-
t = datetime.datetime.utcnow()
172+
t = datetime.datetime.now(datetime.timezone.utc)
173173
elif type(ts) is float:
174-
t = datetime.datetime.utcfromtimestamp(ts)
174+
t = datetime.datetime.fromtimestamp(ts, tz=datetime.timezone.utc)
175175
else:
176176
t = ts
177177

@@ -311,8 +311,8 @@ def append_tz_timestamp(self, tag, timestamp=None, precision=3,
311311
(timestamp.microsecond * 1e-6)
312312

313313
# Get offset of local timezone east of UTC.
314-
utc = datetime.datetime.utcfromtimestamp(now)
315-
local = datetime.datetime.fromtimestamp(now)
314+
utc = datetime.datetime.fromtimestamp(now, tz=datetime.timezone.utc)
315+
local = datetime.datetime.fromtimestamp(now, tz=datetime.datetime.now().astimezone().tzinfo)
316316
td = local - utc
317317
offset = int(((td.days * 86400) + td.seconds) / 60)
318318

@@ -351,14 +351,14 @@ def append_tz_time_only(self, tag, timestamp=None, precision=3,
351351
standard.
352352
"""
353353
if timestamp is None:
354-
t = datetime.datetime.now()
354+
t = datetime.datetime.now(tz=datetime.timezone.utc)
355355
elif type(timestamp) is float:
356-
t = datetime.datetime.fromtimestamp(timestamp)
356+
t = datetime.datetime.fromtimestamp(timestamp, tz=datetime.datetime.now().astimezone().tzinfo)
357357
else:
358358
t = timestamp
359359

360360
now = time.mktime(t.timetuple()) + (t.microsecond * 1e-6)
361-
utc = datetime.datetime.utcfromtimestamp(now)
361+
utc = datetime.datetime.fromtimestamp(now, tz=datetime.timezone.utc)
362362
td = t - utc
363363
offset = int(((td.days * 86400) + td.seconds) / 60)
364364

test/test_message.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -499,8 +499,8 @@ def test_append_tzts_none(self):
499499

500500
@staticmethod
501501
def calculate_tz_offset(t):
502-
local = datetime.datetime.fromtimestamp(t)
503-
utc = datetime.datetime.utcfromtimestamp(t)
502+
local = datetime.datetime.fromtimestamp(t, tz=datetime.datetime.now().astimezone().tzinfo)
503+
utc = datetime.datetime.fromtimestamp(t, tz=datetime.timezone.utc)
504504
td = local - utc
505505
offset = int(((td.days * 86400) + td.seconds) / 60)
506506
return offset
@@ -531,7 +531,7 @@ def test_append_tzts_float(self):
531531
def test_append_tzts_datetime(self):
532532
msg = FixMessage()
533533
t = 1484581872.933458
534-
local = datetime.datetime.fromtimestamp(t)
534+
local = datetime.datetime.fromtimestamp(t, tz=datetime.datetime.now().astimezone().tzinfo)
535535
msg.append_tz_timestamp(1132, local)
536536

537537
test = time.localtime(t)
@@ -609,7 +609,7 @@ def test_tzts_bad_precision(self):
609609
def test_tzto_datetime(self):
610610
msg = FixMessage()
611611
t = 1484581872.933458
612-
local = datetime.datetime.fromtimestamp(t)
612+
local = datetime.datetime.fromtimestamp(t, tz=datetime.datetime.now().astimezone().tzinfo)
613613
msg.append_tz_time_only(1079, local)
614614

615615
test = time.localtime(t)

0 commit comments

Comments
 (0)