Skip to content

Commit

Permalink
Fix SQS tests assuming the query service response structure (#684)
Browse files Browse the repository at this point in the history
* Fix SQS tests assuming the query service response structure

In PR 637, SQS changed from a `QueryService` to a `JSONService`. The
response obtained when interacting with SQS using the query protocol
includes a field called `<ActionName>Result`, where `<ActionName>` is
the action requested. The JSON protocol does not include that field.
Thus we can fix issue 683 by simply deleting that additional `getindex`
call.

* Also remove `ReceiveMessageResult`

* Helps if you read the docs

* Once again, the docs help

* ...And again, docs
  • Loading branch information
ararslan authored Jul 2, 2024
1 parent 162c608 commit d7e4dca
Showing 1 changed file with 9 additions and 9 deletions.
18 changes: 9 additions & 9 deletions test/AWS.jl
Original file line number Diff line number Diff line change
Expand Up @@ -792,7 +792,7 @@ end
function _get_queue_url(queue_name)
result = SQS.get_queue_url(queue_name)

return result["GetQueueUrlResult"]["QueueUrl"]
return result["QueueUrl"]
end

# Create Queue
Expand All @@ -809,7 +809,7 @@ end
SQS.send_message(expected_message, queue_url)

response = SQS.receive_message(queue_url)
receipt_handle = response["ReceiveMessageResult"]["Message"]["ReceiptHandle"]
receipt_handle = only(response["Messages"])["ReceiptHandle"]

response = SQS.delete_message_batch(
[
Expand All @@ -820,13 +820,13 @@ end
queue_url,
)

message_id = response["DeleteMessageBatchResult"]["DeleteMessageBatchResultEntry"]["Id"]
message_id = only(response["Successful"])["Id"]
@test message_id == expected_message_id

SQS.send_message(expected_message, queue_url)

result = SQS.receive_message(queue_url)
message = result["ReceiveMessageResult"]["Message"]["Body"]
message = only(result["Messages"])["Body"]
@test message == expected_message
finally
SQS.delete_queue(queue_url)
Expand All @@ -842,7 +842,7 @@ end
function _get_queue_url(queue_name)
result = AWSServices.sqs("GetQueueUrl", LittleDict("QueueName" => queue_name))

return result["GetQueueUrlResult"]["QueueUrl"]
return result["QueueUrl"]
end

# Create Queue
Expand All @@ -863,13 +863,13 @@ end
response = AWSServices.sqs(
"ReceiveMessage", LittleDict("QueueUrl" => queue_url)
)
receipt_handle = response["ReceiveMessageResult"]["Message"]["ReceiptHandle"]
receipt_handle = only(response["Messages"])["ReceiptHandle"]

response = AWSServices.sqs(
"DeleteMessageBatch",
LittleDict(
"QueueUrl" => queue_url,
"DeleteMessageBatchRequestEntry" => [
"Entries" => [
LittleDict(
"Id" => expected_message_id,
"ReceiptHandle" => receipt_handle,
Expand All @@ -878,7 +878,7 @@ end
),
)

message_id = response["DeleteMessageBatchResult"]["DeleteMessageBatchResultEntry"]["Id"]
message_id = only(response["Successful"])["Id"]
@test message_id == expected_message_id

# Send message
Expand All @@ -889,7 +889,7 @@ end

# Receive Message
result = AWSServices.sqs("ReceiveMessage", LittleDict("QueueUrl" => queue_url))
message = result["ReceiveMessageResult"]["Message"]["Body"]
message = only(result["Messages"])["Body"]
@test message == expected_message
finally
AWSServices.sqs("DeleteQueue", LittleDict("QueueUrl" => queue_url))
Expand Down

0 comments on commit d7e4dca

Please sign in to comment.