Skip to content

Commit fb90577

Browse files
Copilotafarntrog
andcommitted
test: use timezone-aware datetimes
Co-authored-by: afarntrog <47332252+afarntrog@users.noreply.github.com>
1 parent d072642 commit fb90577

4 files changed

Lines changed: 9 additions & 8 deletions

File tree

src/strands/session/repository_session_manager.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,11 @@ def __init__(
4747
self.session_repository = session_repository
4848
self.session_id = session_id
4949
self.state_serializer = state_serializer or JsonStateSerializer()
50-
if not getattr(self.state_serializer, "name", None):
50+
serializer_name = getattr(self.state_serializer, "name", "")
51+
if not isinstance(serializer_name, str) or not serializer_name.strip():
5152
raise ValueError("state_serializer.name must be a non-empty string")
5253
self.state_serializer_registry: dict[str, StateSerializer] = {
53-
self.state_serializer.name: self.state_serializer
54+
serializer_name: self.state_serializer
5455
}
5556
if state_serializer_registry:
5657
self.state_serializer_registry.update(state_serializer_registry)

tests/strands/agent/test_agent_state.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,9 +86,9 @@ def test_json_serializable_values():
8686
def test_non_json_values_allowed_by_default():
8787
"""Non-JSON values are allowed when validation is disabled."""
8888
state = AgentState()
89-
from datetime import datetime
89+
from datetime import datetime, timezone
9090

91-
marker = datetime.utcnow()
91+
marker = datetime.now(timezone.utc)
9292
state.set("obj", marker)
9393
assert state.get("obj") == marker
9494

tests/strands/types/test_json_dict.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,9 @@ def test_json_serializable_values():
8282
def test_non_json_values_allowed_by_default():
8383
"""Non-JSON values are allowed when validation is disabled."""
8484
state = JSONSerializableDict()
85-
from datetime import datetime
85+
from datetime import datetime, timezone
8686

87-
marker = datetime.utcnow()
87+
marker = datetime.now(timezone.utc)
8888
state.set("obj", marker)
8989
assert state.get("obj") == marker
9090

tests/strands/types/test_state_serializers.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
from datetime import datetime
1+
from datetime import datetime, timezone
22

33
from strands.types.state_serializers import JsonStateSerializer, PickleStateSerializer
44

55

66
def test_json_state_serializer_drops_non_serializable():
77
serializer = JsonStateSerializer()
8-
state = {"a": 1, "dt": datetime.utcnow()}
8+
state = {"a": 1, "dt": datetime.now(timezone.utc)}
99

1010
serialized = serializer.serialize(state)
1111

0 commit comments

Comments
 (0)