Skip to content

Commit 8a314b8

Browse files
author
Lucas McDonald
committed
m
1 parent 3641f19 commit 8a314b8

File tree

6 files changed

+66
-58
lines changed

6 files changed

+66
-58
lines changed

DynamoDbEncryption/runtimes/python/src/aws_dbesdk_dynamodb/internal/client_to_resource.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,7 @@ def batch_execute_statement_request(self, batch_execute_statement_request):
120120
return self.boto3_converter.BatchExecuteStatementInput(batch_execute_statement_request)
121121

122122
def batch_execute_statement_response(self, batch_execute_statement_response):
123-
# DBESDK transformers will raise an exception before this is called
124-
raise NotImplementedError("batch_execute_statement response handling is not implemented")
123+
return self.boto3_converter.BatchExecuteStatementOutput(batch_execute_statement_response)
125124

126125
def delete_item_response(self, delete_item_response):
127126
return self.boto3_converter.DeleteItemOutput(delete_item_response)
@@ -130,12 +129,10 @@ def execute_statement_request(self, execute_statement_request):
130129
return self.boto3_converter.ExecuteStatementInput(execute_statement_request)
131130

132131
def execute_statement_response(self, execute_statement_response):
133-
# DBESDK transformers will raise an exception before this is called
134-
raise NotImplementedError("execute_statement response handling is not implemented")
132+
return self.boto3_converter.ExecuteStatementOutput(execute_statement_response)
135133

136134
def execute_transaction_request(self, execute_transaction_request):
137135
return self.boto3_converter.ExecuteTransactionInput(execute_transaction_request)
138136

139137
def execute_transaction_response(self, execute_transaction_response):
140-
# DBESDK transformers will raise an exception before this is called
141-
raise NotImplementedError("execute_transaction response handling is not implemented")
138+
return self.boto3_converter.ExecuteTransactionOutput(execute_transaction_response)

DynamoDbEncryption/runtimes/python/src/aws_dbesdk_dynamodb/internal/resource_to_client.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -134,22 +134,19 @@ def batch_execute_statement_request(self, batch_execute_statement_request):
134134
return self.boto3_converter.BatchExecuteStatementInput(batch_execute_statement_request)
135135

136136
def batch_execute_statement_response(self, batch_execute_statement_response):
137-
# DBESDK transformers will raise an exception before this is called
138-
raise NotImplementedError("batch_execute_statement response handling is not implemented")
137+
return self.boto3_converter.BatchExecuteStatementOutput(batch_execute_statement_response)
139138

140139
def execute_statement_request(self, execute_statement_request):
141140
return self.boto3_converter.ExecuteStatementInput(execute_statement_request)
142141

143142
def execute_statement_response(self, execute_statement_response):
144-
# DBESDK transformers will raise an exception before this is called
145-
raise NotImplementedError("execute_statement response handling is not implemented")
143+
return self.boto3_converter.ExecuteStatementOutput(execute_statement_response)
146144

147145
def execute_transaction_request(self, execute_transaction_request):
148146
return self.boto3_converter.ExecuteTransactionInput(execute_transaction_request)
149147

150148
def execute_transaction_response(self, execute_transaction_response):
151-
# DBESDK transformers will raise an exception before this is called
152-
raise NotImplementedError("execute_transaction response handling is not implemented")
149+
return self.boto3_converter.ExecuteTransactionOutput(execute_transaction_response)
153150

154151
def scan_response(self, scan_response):
155152
return self.boto3_converter.ScanOutput(scan_response)

DynamoDbEncryption/runtimes/python/test/integ/encrypted/test_client.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -441,10 +441,10 @@ def execute_uses_encrypted_table(request):
441441

442442

443443
@pytest.fixture
444-
def execute_statement_request(execute_uses_encrypted_table):
444+
def execute_statement_request(execute_uses_encrypted_table, test_item):
445445
if execute_uses_encrypted_table:
446-
return basic_execute_statement_request_encrypted_table()
447-
return basic_execute_statement_request_plaintext_table()
446+
return basic_execute_statement_request_encrypted_table(test_item)
447+
return basic_execute_statement_request_plaintext_table(test_item)
448448

449449

450450
def test_WHEN_execute_statement_for_encrypted_table_THEN_raises_DynamoDbEncryptionTransformsException(

DynamoDbEncryption/runtimes/python/test/requests.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,14 +82,22 @@ def base_update_item_request_unsigned_attribute(item):
8282
}
8383

8484

85-
def basic_execute_statement_request_encrypted_table():
85+
def basic_execute_statement_request_encrypted_table(item):
8686
"""Base structure for execute_statement requests for an encrypted table."""
87-
return {"Statement": "SELECT * FROM " + INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME}
87+
return {
88+
"Statement": f"""SELECT * FROM {INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME}
89+
WHERE partition_key=? AND sort_key=?""",
90+
"Parameters": [item["partition_key"], item["sort_key"]],
91+
}
8892

8993

90-
def basic_execute_statement_request_plaintext_table():
94+
def basic_execute_statement_request_plaintext_table(item):
9195
"""Base structure for execute_statement requests for a plaintext table."""
92-
return {"Statement": "SELECT * FROM " + INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME_PLAINTEXT}
96+
return {
97+
"Statement": f"""SELECT * FROM {INTEG_TEST_DEFAULT_DYNAMODB_TABLE_NAME_PLAINTEXT}
98+
WHERE partition_key=? AND sort_key=?""",
99+
"Parameters": [item["partition_key"], item["sort_key"]],
100+
}
93101

94102

95103
def basic_execute_transaction_request_encrypted_table(item):

DynamoDbEncryption/runtimes/python/test/unit/internal/test_client_to_resource.py

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -603,20 +603,21 @@ def test_GIVEN_test_execute_statement_request_WHEN_client_to_resource_THEN_retur
603603
test_execute_statement_request, test_ddb_item, test_dict_item
604604
):
605605
# Given: Execute statement request
606-
request = test_execute_statement_request()
606+
request = test_execute_statement_request(test_ddb_item)
607607
# When: Converting to resource format
608608
dict_item = client_to_resource_converter.execute_statement_request(request)
609609
# Then: Returns dict value (here, request is not modified)
610-
assert dict_item == test_execute_statement_request()
610+
assert dict_item == test_execute_statement_request(test_dict_item)
611611

612612

613613
def test_GIVEN_test_execute_statement_response_WHEN_client_to_resource_THEN_raises_NotImplementedError():
614614
# Given: Execute statement response
615-
response = {"Some": "Response"}
616-
# Then: Raises NotImplementedError
617-
with pytest.raises(NotImplementedError):
618-
# When: Converting to resource format
619-
client_to_resource_converter.execute_statement_response(response)
615+
# TODO: this
616+
ddb_response = {}
617+
# When: Converting to resource format
618+
resource_response = client_to_resource_converter.execute_statement_response(ddb_response)
619+
# Then: Returns dict value
620+
assert resource_response == {}
620621

621622

622623
@pytest.fixture
@@ -635,13 +636,14 @@ def test_GIVEN_test_execute_transaction_request_WHEN_client_to_resource_THEN_ret
635636
assert dict_item == test_execute_transaction_request(test_dict_item)
636637

637638

638-
def test_GIVEN_test_execute_transaction_response_WHEN_client_to_resource_THEN_raises_NotImplementedError():
639+
def test_GIVEN_test_execute_transaction_response_WHEN_client_to_resource_THEN_returns_dict_value():
639640
# Given: Execute transaction response
640-
response = {"Some": "Response"}
641-
# Then: Raises NotImplementedError
642-
with pytest.raises(NotImplementedError):
643-
# When: Converting to resource format
644-
client_to_resource_converter.execute_transaction_response(response)
641+
# TODO: this
642+
ddb_response = {}
643+
# When: Converting to resource format
644+
resource_response = client_to_resource_converter.execute_transaction_response(ddb_response)
645+
# Then: Returns dict value
646+
assert resource_response == {}
645647

646648

647649
@pytest.fixture
@@ -662,11 +664,12 @@ def test_GIVEN_test_batch_execute_statement_request_WHEN_client_to_resource_THEN
662664

663665
def test_GIVEN_test_batch_execute_statement_response_WHEN_client_to_resource_THEN_raises_NotImplementedError():
664666
# Given: Batch execute statement response
665-
response = {"Some": "Response"}
666-
# Then: Raises NotImplementedError
667-
with pytest.raises(NotImplementedError):
668-
# When: Converting to resource format
669-
client_to_resource_converter.batch_execute_statement_response(response)
667+
# TODO: this
668+
ddb_response = {}
669+
# When: Converting to resource format
670+
resource_response = client_to_resource_converter.batch_execute_statement_response(ddb_response)
671+
# Then: Returns dict value
672+
assert resource_response == {}
670673

671674

672675
@pytest.fixture

DynamoDbEncryption/runtimes/python/test/unit/internal/test_resource_to_client.py

Lines changed: 24 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -879,20 +879,21 @@ def test_GIVEN_test_execute_statement_request_WHEN_resource_to_client_THEN_retur
879879
test_execute_statement_request, test_ddb_item, test_dict_item
880880
):
881881
# Given: Execute statement request
882-
request = test_execute_statement_request()
882+
request = test_execute_statement_request(test_dict_item)
883883
# When: Converting to resource format
884884
actual_ddb_request = resource_to_client_converter.execute_statement_request(request)
885885
# Then: Returns dict value (here, request is not modified)
886-
assert actual_ddb_request == test_execute_statement_request()
886+
assert actual_ddb_request == test_execute_statement_request(test_ddb_item)
887887

888888

889-
def test_GIVEN_execute_statement_response_WHEN_resource_to_client_THEN_raises_NotImplementedError():
889+
def test_GIVEN_test_execute_statement_response_WHEN_resource_to_client_THEN_returns_dict_value():
890890
# Given: Execute statement response
891-
response = {"Some": "Response"}
892-
# Then: Raises NotImplementedError
893-
with pytest.raises(NotImplementedError):
894-
# When: Converting to resource format
895-
resource_to_client_converter.execute_statement_response(response)
891+
# TODO: this
892+
dict_response = {}
893+
# When: Converting to resource format
894+
ddb_response = resource_to_client_converter.execute_statement_response(dict_response)
895+
# Then: Returns dict value
896+
assert ddb_response == {}
896897

897898

898899
@pytest.fixture
@@ -911,13 +912,14 @@ def test_GIVEN_test_execute_transaction_request_WHEN_resource_to_client_THEN_ret
911912
assert actual_ddb_request == test_execute_transaction_request(test_ddb_item)
912913

913914

914-
def test_GIVEN_execute_transaction_response_WHEN_resource_to_client_THEN_raises_NotImplementedError():
915+
def test_GIVEN_test_execute_transaction_response_WHEN_resource_to_client_THEN_returns_dict_value():
915916
# Given: Execute transaction response
916-
response = {"Some": "Response"}
917-
# Then: Raises NotImplementedError
918-
with pytest.raises(NotImplementedError):
919-
# When: Converting to resource format
920-
resource_to_client_converter.execute_transaction_response(response)
917+
# TODO: this
918+
dict_response = {}
919+
# When: Converting to resource format
920+
ddb_response = resource_to_client_converter.execute_transaction_response(dict_response)
921+
# Then: Returns dict value
922+
assert ddb_response == {}
921923

922924

923925
@pytest.fixture
@@ -926,7 +928,7 @@ def test_batch_execute_statement_request():
926928

927929

928930
def test_GIVEN_test_batch_execute_statement_request_WHEN_resource_to_client_THEN_returns_ddb_value(
929-
test_batch_execute_statement_request, test_ddb_item, test_dict_item
931+
test_batch_execute_statement_request
930932
):
931933
# Given: Batch execute statement request
932934
request = test_batch_execute_statement_request()
@@ -936,13 +938,14 @@ def test_GIVEN_test_batch_execute_statement_request_WHEN_resource_to_client_THEN
936938
assert actual_ddb_request == test_batch_execute_statement_request()
937939

938940

939-
def test_GIVEN_batch_execute_statement_response_WHEN_resource_to_client_THEN_raises_NotImplementedError():
941+
def test_GIVEN_test_batch_execute_statement_response_WHEN_resource_to_client_THEN_returns_dict_value():
940942
# Given: Batch execute statement response
941-
response = {"Some": "Response"}
942-
# Then: Raises NotImplementedError
943-
with pytest.raises(NotImplementedError):
944-
# When: Converting to resource format
945-
resource_to_client_converter.batch_execute_statement_response(response)
943+
# TODO: this
944+
dict_response = {}
945+
# When: Converting to resource format
946+
ddb_response = resource_to_client_converter.batch_execute_statement_response(dict_response)
947+
# Then: Returns dict value
948+
assert ddb_response == {}
946949

947950

948951
@pytest.fixture

0 commit comments

Comments
 (0)