Skip to content

Commit 383d161

Browse files
committed
fix: pr remark + add test for nested query string params
1 parent dd0c4d1 commit 383d161

1 file changed

Lines changed: 20 additions & 2 deletions

File tree

tests/unit/commands/local/generate_event/test_event_generation.py

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import json
12
import os
23

34
from unittest import TestCase
@@ -97,7 +98,6 @@ def test_generate_event_with_dict_value(self):
9798
"querystringparameters": '{"documentId": "1044", "versionId": "v_1"}',
9899
},
99100
)
100-
import json
101101

102102
result_json = json.loads(result)
103103
# Verify that queryStringParameters is a dict, not a string
@@ -119,7 +119,6 @@ def test_generate_event_with_complex_dict_value(self):
119119
"querystringparameters": '{"filter": "status=active", "sort": "desc", "limit": "10"}',
120120
},
121121
)
122-
import json
123122

124123
result_json = json.loads(result)
125124
# Verify complex dict is properly parsed
@@ -128,6 +127,25 @@ def test_generate_event_with_complex_dict_value(self):
128127
self.assertEqual(result_json["queryStringParameters"]["sort"], "desc")
129128
self.assertEqual(result_json["queryStringParameters"]["limit"], "10")
130129

130+
def test_generate_event_with_nested_dict_value(self):
131+
"""Test that generate_event preserves nested objects inside dict-type values"""
132+
events_lib = events.Events()
133+
result = events_lib.generate_event(
134+
"apigateway",
135+
"aws-proxy",
136+
{
137+
"method": "GET",
138+
"path": "test",
139+
"body": "",
140+
"querystringparameters": '{"outer": {"inner": "x"}, "items": ["a", "b"]}',
141+
},
142+
)
143+
144+
result_json = json.loads(result)
145+
self.assertIsInstance(result_json["queryStringParameters"], dict)
146+
self.assertEqual(result_json["queryStringParameters"]["outer"]["inner"], "x")
147+
self.assertEqual(result_json["queryStringParameters"]["items"], ["a", "b"])
148+
131149

132150
class TestServiceCommand(TestCase):
133151
def setUp(self):

0 commit comments

Comments
 (0)