7
7
exhaustive_query_request_ddb ,
8
8
basic_scan_request_ddb ,
9
9
exhaustive_scan_request_ddb ,
10
+ basic_batch_get_item_request_ddb ,
11
+ basic_batch_write_item_put_request_ddb ,
12
+ basic_batch_write_item_delete_request_ddb ,
10
13
)
11
14
from ...dict_formatted_requests import (
12
15
basic_put_item_request_dict ,
17
20
exhaustive_query_request_dict ,
18
21
basic_scan_request_dict ,
19
22
exhaustive_scan_request_dict ,
23
+ basic_batch_get_item_request_dict ,
24
+ basic_batch_write_item_put_request_dict ,
25
+ basic_batch_write_item_delete_request_dict ,
26
+ )
27
+ from ...responses import (
28
+ basic_query_response ,
29
+ basic_scan_response ,
30
+ exhaustive_scan_response ,
31
+ basic_put_item_response ,
32
+ exhaustive_put_item_response ,
33
+ basic_get_item_response ,
34
+ exhaustive_get_item_response ,
35
+ exhaustive_query_response ,
36
+ basic_batch_get_item_response ,
37
+ exhaustive_batch_get_item_response ,
38
+ basic_batch_write_item_put_response ,
39
+ exhaustive_batch_write_item_put_response ,
20
40
)
21
41
from ...items import *
22
42
from aws_database_encryption_sdk .internal .client_to_resource import ClientShapeToResourceShapeConverter
@@ -86,6 +106,22 @@ def test_GIVEN_test_put_item_request_WHEN_client_to_resource_THEN_returns_dict_v
86
106
if key != "ConditionExpression" :
87
107
assert dict_item [key ] == expected_dict_request [key ]
88
108
109
+
110
+ @pytest .fixture
111
+ def test_put_item_response (use_exhaustive_request ):
112
+ if use_exhaustive_request :
113
+ return exhaustive_put_item_response
114
+ return basic_put_item_response
115
+
116
+ def test_GIVEN_test_put_item_response_WHEN_client_to_resource_THEN_returns_dict_value (test_put_item_response , test_ddb_key , test_dict_key ):
117
+ # Given: Put item response
118
+ response = test_put_item_response (test_ddb_key )
119
+ # When: Converting to resource format
120
+ print (f"{ response = } " )
121
+ dict_item = client_to_resource_converter .put_item_response (response )
122
+ # Then: Returns dict value
123
+ assert dict_item == test_put_item_response (test_dict_key )
124
+
89
125
@pytest .fixture
90
126
def test_get_item_request_ddb (use_exhaustive_request ):
91
127
if use_exhaustive_request :
@@ -106,6 +142,20 @@ def test_GIVEN_test_get_item_request_WHEN_client_to_resource_THEN_returns_dict_v
106
142
# Then: Returns dict value
107
143
assert dict_item == test_get_item_request_dict (test_dict_item )
108
144
145
+ @pytest .fixture
146
+ def test_get_item_response (use_exhaustive_request ):
147
+ if use_exhaustive_request :
148
+ return exhaustive_get_item_response
149
+ return basic_get_item_response
150
+
151
+ def test_GIVEN_test_get_item_response_WHEN_client_to_resource_THEN_returns_dict_value (test_get_item_response , test_ddb_item , test_dict_item ):
152
+ # Given: Get item response
153
+ response = test_get_item_response (test_ddb_item )
154
+ # When: Converting to resource format
155
+ dict_item = client_to_resource_converter .get_item_response (response )
156
+ # Then: Returns dict value
157
+ assert dict_item == test_get_item_response (test_dict_item )
158
+
109
159
@pytest .fixture
110
160
def test_query_request_ddb (use_exhaustive_request ):
111
161
if use_exhaustive_request :
@@ -130,6 +180,20 @@ def test_GIVEN_test_query_request_WHEN_client_to_resource_THEN_returns_dict_valu
130
180
else :
131
181
assert dict_item [key ] == test_query_request_dict (test_dict_item )[key ]
132
182
183
+ @pytest .fixture
184
+ def test_query_response (use_exhaustive_request ):
185
+ if use_exhaustive_request :
186
+ return exhaustive_query_response
187
+ return basic_query_response
188
+
189
+ def test_GIVEN_test_query_response_WHEN_client_to_resource_THEN_returns_dict_value (test_query_response , test_ddb_item , test_dict_item ):
190
+ # Given: Query response
191
+ response = test_query_response ([test_ddb_item ])
192
+ # When: Converting to resource format
193
+ dict_item = client_to_resource_converter .query_response (response )
194
+ # Then: Returns dict value
195
+ assert dict_item == test_query_response ([test_dict_item ])
196
+
133
197
def get_string_for_key_condition_expression (key_condition_expression , expression_attribute_names , expression_attribute_values ):
134
198
"""Get the string for the key condition expression."""
135
199
if not isinstance (key_condition_expression , str ):
@@ -176,3 +240,92 @@ def test_GIVEN_test_scan_request_WHEN_client_to_resource_THEN_returns_dict_value
176
240
# Then: Returns dict value
177
241
assert dict_item == test_scan_request_dict (test_dict_item )
178
242
243
+ @pytest .fixture
244
+ def test_scan_response (use_exhaustive_request ):
245
+ if use_exhaustive_request :
246
+ return exhaustive_scan_response
247
+ return basic_scan_response
248
+
249
+ def test_GIVEN_test_scan_response_WHEN_client_to_resource_THEN_returns_dict_value (test_scan_response , test_ddb_item , test_dict_item , test_ddb_key , test_dict_key ):
250
+ # Given: Scan response
251
+ response = test_scan_response ([test_ddb_item ], [test_ddb_key ])
252
+ # When: Converting to resource format
253
+ dict_item = client_to_resource_converter .scan_response (response )
254
+ # Then: Returns dict value
255
+ assert dict_item == test_scan_response ([test_dict_item ], [test_dict_key ])
256
+
257
+ @pytest .fixture
258
+ def test_batch_get_item_request_ddb ():
259
+ return basic_batch_get_item_request_ddb
260
+
261
+ @pytest .fixture
262
+ def test_batch_get_item_request_dict ():
263
+ return basic_batch_get_item_request_dict
264
+
265
+ def test_GIVEN_test_batch_get_item_request_WHEN_client_to_resource_THEN_returns_dict_value (test_batch_get_item_request_ddb , test_batch_get_item_request_dict , test_ddb_item , test_dict_item ):
266
+ # Given: Batch get item request
267
+ request = test_batch_get_item_request_ddb ([test_ddb_item ])
268
+ # When: Converting to resource format
269
+ dict_item = client_to_resource_converter .batch_get_item_request (request )
270
+ # Then: Returns dict value
271
+ assert dict_item == test_batch_get_item_request_dict ([test_dict_item ])
272
+
273
+ @pytest .fixture
274
+ def test_batch_get_item_response (use_exhaustive_request ):
275
+ if use_exhaustive_request :
276
+ return exhaustive_batch_get_item_response
277
+ return basic_batch_get_item_response
278
+
279
+ def test_GIVEN_test_batch_get_item_response_WHEN_client_to_resource_THEN_returns_dict_value (test_batch_get_item_response , test_ddb_item , test_dict_item ):
280
+ # Given: Batch get item response
281
+ response = test_batch_get_item_response ([test_ddb_item ])
282
+ # When: Converting to resource format
283
+ dict_item = client_to_resource_converter .batch_get_item_response (response )
284
+ # Then: Returns dict value
285
+ assert dict_item == test_batch_get_item_response ([test_dict_item ])
286
+
287
+ @pytest .fixture
288
+ def test_batch_write_item_put_request_ddb ():
289
+ return basic_batch_write_item_put_request_ddb
290
+
291
+ @pytest .fixture
292
+ def test_batch_write_item_put_request_dict ():
293
+ return basic_batch_write_item_put_request_dict
294
+
295
+ def test_GIVEN_test_batch_write_item_put_request_WHEN_client_to_resource_THEN_returns_dict_value (test_batch_write_item_put_request_ddb , test_batch_write_item_put_request_dict , test_ddb_item , test_dict_item ):
296
+ # Given: Batch write item request
297
+ request = test_batch_write_item_put_request_ddb ([test_ddb_item ])
298
+ # When: Converting to resource format
299
+ dict_item = client_to_resource_converter .batch_write_item_request (request )
300
+ # Then: Returns dict value
301
+ assert dict_item == test_batch_write_item_put_request_dict ([test_dict_item ])
302
+
303
+ @pytest .fixture
304
+ def test_batch_write_item_delete_request_ddb ():
305
+ return basic_batch_write_item_delete_request_ddb
306
+
307
+ @pytest .fixture
308
+ def test_batch_write_item_delete_request_dict ():
309
+ return basic_batch_write_item_delete_request_dict
310
+
311
+ def test_GIVEN_test_batch_write_item_delete_request_WHEN_client_to_resource_THEN_returns_dict_value (test_batch_write_item_delete_request_ddb , test_batch_write_item_delete_request_dict , test_ddb_key , test_dict_key ):
312
+ # Given: Batch write item delete request
313
+ request = test_batch_write_item_delete_request_ddb ([test_ddb_key ])
314
+ # When: Converting to resource format
315
+ dict_item = client_to_resource_converter .batch_write_item_request (request )
316
+ # Then: Returns dict value
317
+ assert dict_item == test_batch_write_item_delete_request_dict ([test_dict_key ])
318
+
319
+ @pytest .fixture
320
+ def test_batch_write_item_put_response (use_exhaustive_request ):
321
+ if use_exhaustive_request :
322
+ return exhaustive_batch_write_item_put_response
323
+ return basic_batch_write_item_put_response
324
+
325
+ def test_GIVEN_test_batch_write_item_put_response_WHEN_client_to_resource_THEN_returns_dict_value (test_batch_write_item_put_response , test_ddb_item , test_dict_item ):
326
+ # Given: Batch write item put response
327
+ response = test_batch_write_item_put_response ([test_ddb_item ])
328
+ # When: Converting to resource format
329
+ dict_item = client_to_resource_converter .batch_write_item_response (response )
330
+ # Then: Returns dict value
331
+ assert dict_item == test_batch_write_item_put_response ([test_dict_item ])
0 commit comments