Skip to content

Commit 55a8a99

Browse files
committed
Use UTC timezones when creating datetime objects
Signed-off-by: Leandro Lucarella <luca-frequenz@llucax.com>
1 parent c5a61af commit 55a8a99

2 files changed

Lines changed: 37 additions & 37 deletions

File tree

src/frequenz/client/dispatch/__main__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ def format_recurrence(recurrence: RecurrenceRule) -> str:
6565

6666
def month_name(month: int) -> str:
6767
"""Return the name of the month."""
68-
return datetime(2000, month, 1).strftime("%B")
68+
return datetime(2000, month, 1, tzinfo=timezone.utc).strftime("%B")
6969

7070

7171
# pylint: disable=too-many-statements, too-many-locals

tests/test_cli.py

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -76,15 +76,15 @@ def mock_client(fake_client: FakeClient) -> Generator[None, None, None]:
7676
Dispatch(
7777
id=DispatchId(1),
7878
type="test",
79-
start_time=datetime(2023, 1, 1, 0, 0, 0),
79+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
8080
duration=timedelta(seconds=3600),
8181
target=TargetIds(1, 2, 3),
8282
active=True,
8383
dry_run=False,
8484
payload={},
8585
recurrence=RecurrenceRule(),
86-
create_time=datetime(2023, 1, 1, 0, 0, 0),
87-
update_time=datetime(2023, 1, 1, 0, 0, 0),
86+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
87+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
8888
)
8989
]
9090
},
@@ -99,15 +99,15 @@ def mock_client(fake_client: FakeClient) -> Generator[None, None, None]:
9999
Dispatch(
100100
id=DispatchId(2),
101101
type="test",
102-
start_time=datetime(2023, 1, 1, 0, 0, 0),
102+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
103103
duration=timedelta(seconds=3600),
104104
target=TargetIds(1, 2, 3),
105105
active=True,
106106
dry_run=False,
107107
payload={},
108108
recurrence=RecurrenceRule(),
109-
create_time=datetime(2023, 1, 1, 0, 0, 0),
110-
update_time=datetime(2023, 1, 1, 0, 0, 0),
109+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
110+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
111111
)
112112
]
113113
},
@@ -121,30 +121,30 @@ def mock_client(fake_client: FakeClient) -> Generator[None, None, None]:
121121
Dispatch(
122122
id=DispatchId(1),
123123
type="test",
124-
start_time=datetime(2023, 1, 1, 0, 0, 0),
124+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
125125
duration=timedelta(seconds=3600),
126126
target=TargetIds(1, 2, 3),
127127
active=True,
128128
dry_run=False,
129129
payload={},
130130
recurrence=RecurrenceRule(),
131-
create_time=datetime(2023, 1, 1, 0, 0, 0),
132-
update_time=datetime(2023, 1, 1, 0, 0, 0),
131+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
132+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
133133
)
134134
],
135135
2: [
136136
Dispatch(
137137
id=DispatchId(2),
138138
type="test",
139-
start_time=datetime(2023, 1, 1, 0, 0, 0),
139+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
140140
duration=timedelta(seconds=3600),
141141
target=TargetIds(1, 2, 3),
142142
active=True,
143143
dry_run=False,
144144
payload={},
145145
recurrence=RecurrenceRule(),
146-
create_time=datetime(2023, 1, 1, 0, 0, 0),
147-
update_time=datetime(2023, 1, 1, 0, 0, 0),
146+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
147+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
148148
),
149149
],
150150
},
@@ -164,28 +164,28 @@ def mock_client(fake_client: FakeClient) -> Generator[None, None, None]:
164164
Dispatch(
165165
id=DispatchId(1),
166166
type="test",
167-
start_time=datetime(2023, 1, 1, 0, 0, 0),
167+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
168168
duration=timedelta(seconds=3600),
169169
target=TargetIds(1, 2, 3),
170170
active=True,
171171
dry_run=False,
172172
payload={},
173173
recurrence=RecurrenceRule(),
174-
create_time=datetime(2023, 1, 1, 0, 0, 0),
175-
update_time=datetime(2023, 1, 1, 0, 0, 0),
174+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
175+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
176176
),
177177
Dispatch(
178178
id=DispatchId(2),
179179
type="filtered",
180-
start_time=datetime(2023, 1, 1, 0, 0, 0),
180+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
181181
duration=timedelta(seconds=1800),
182182
target=TargetIds(3),
183183
active=True,
184184
dry_run=False,
185185
payload={},
186186
recurrence=RecurrenceRule(),
187-
create_time=datetime(2023, 1, 1, 0, 0, 0),
188-
update_time=datetime(2023, 1, 1, 0, 0, 0),
187+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
188+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
189189
),
190190
],
191191
},
@@ -458,15 +458,15 @@ async def test_create_command(
458458
Dispatch(
459459
id=DispatchId(1),
460460
type="test",
461-
start_time=datetime(2023, 1, 1, 0, 0, 0),
461+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
462462
duration=timedelta(seconds=3600),
463463
target=TargetCategories(ElectricalComponentCategory.BATTERY),
464464
active=True,
465465
dry_run=False,
466466
payload={},
467467
recurrence=RecurrenceRule(),
468-
create_time=datetime(2023, 1, 1, 0, 0, 0),
469-
update_time=datetime(2023, 1, 1, 0, 0, 0),
468+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
469+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
470470
)
471471
],
472472
[
@@ -482,15 +482,15 @@ async def test_create_command(
482482
Dispatch(
483483
id=DispatchId(1),
484484
type="test",
485-
start_time=datetime(2023, 1, 1, 0, 0, 0),
485+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
486486
duration=timedelta(seconds=3600),
487487
target=TargetCategories(ElectricalComponentCategory.BATTERY),
488488
active=True,
489489
dry_run=False,
490490
payload={},
491491
recurrence=RecurrenceRule(),
492-
create_time=datetime(2023, 1, 1, 0, 0, 0),
493-
update_time=datetime(2023, 1, 1, 0, 0, 0),
492+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
493+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
494494
)
495495
],
496496
[
@@ -508,7 +508,7 @@ async def test_create_command(
508508
Dispatch(
509509
id=DispatchId(1),
510510
type="test",
511-
start_time=datetime(2023, 1, 1, 0, 0, 0),
511+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
512512
duration=timedelta(seconds=3600),
513513
target=TargetCategories(
514514
ElectricalComponentCategory.BATTERY,
@@ -518,8 +518,8 @@ async def test_create_command(
518518
dry_run=False,
519519
payload={},
520520
recurrence=RecurrenceRule(),
521-
create_time=datetime(2023, 1, 1, 0, 0, 0),
522-
update_time=datetime(2023, 1, 1, 0, 0, 0),
521+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
522+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
523523
)
524524
],
525525
[
@@ -541,15 +541,15 @@ async def test_create_command(
541541
Dispatch(
542542
id=DispatchId(1),
543543
type="test",
544-
start_time=datetime(2023, 1, 1, 0, 0, 0),
544+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
545545
duration=timedelta(seconds=3600),
546546
target=TargetIds(500, 501),
547547
active=True,
548548
dry_run=False,
549549
payload={},
550550
recurrence=RecurrenceRule(),
551-
create_time=datetime(2023, 1, 1, 0, 0, 0),
552-
update_time=datetime(2023, 1, 1, 0, 0, 0),
551+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
552+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
553553
)
554554
],
555555
[
@@ -646,15 +646,15 @@ async def test_update_command(
646646
Dispatch(
647647
id=DispatchId(1),
648648
type="test",
649-
start_time=datetime(2023, 1, 1, 0, 0, 0),
649+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
650650
duration=timedelta(seconds=3600),
651651
target=TargetIds(1, 2, 3),
652652
active=True,
653653
dry_run=False,
654654
payload={},
655655
recurrence=RecurrenceRule(),
656-
create_time=datetime(2023, 1, 1, 0, 0, 0),
657-
update_time=datetime(2023, 1, 1, 0, 0, 0),
656+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
657+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
658658
)
659659
],
660660
1,
@@ -696,15 +696,15 @@ async def test_get_command(
696696
Dispatch(
697697
id=DispatchId(1),
698698
type="test",
699-
start_time=datetime(2023, 1, 1, 0, 0, 0),
699+
start_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
700700
duration=timedelta(seconds=3600),
701701
target=TargetIds(1, 2, 3),
702702
active=True,
703703
dry_run=False,
704704
payload={},
705705
recurrence=RecurrenceRule(),
706-
create_time=datetime(2023, 1, 1, 0, 0, 0),
707-
update_time=datetime(2023, 1, 1, 0, 0, 0),
706+
create_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
707+
update_time=datetime(2023, 1, 1, 0, 0, 0, tzinfo=timezone.utc),
708708
)
709709
],
710710
DispatchId(1),

0 commit comments

Comments
 (0)