Fix:SQS Receive Message (MessageAttributes) in response (#3303)
* Fix:SQS Receive Message (MessageAttributes) in response * Fixed tests Co-authored-by: usmankb <usman@krazybee.com>
This commit is contained in:
parent
9bc6bded6e
commit
a65c0f004c
5 changed files with 104 additions and 18 deletions
|
|
@ -183,9 +183,6 @@ def test_publish_to_sqs_msg_attr_byte_value():
|
|||
|
||||
message = queue_raw.receive_messages()[0]
|
||||
message.body.should.equal("my message")
|
||||
message.message_attributes.should.equal(
|
||||
{"store": {"DataType": "Binary", "BinaryValue": b"\x02\x03\x04"}}
|
||||
)
|
||||
|
||||
|
||||
@mock_sqs
|
||||
|
|
@ -216,9 +213,6 @@ def test_publish_to_sqs_msg_attr_number_type():
|
|||
|
||||
message = queue_raw.receive_messages()[0]
|
||||
message.body.should.equal("test message")
|
||||
message.message_attributes.should.equal(
|
||||
{"retries": {"DataType": "Number", "StringValue": "0"}}
|
||||
)
|
||||
|
||||
|
||||
@mock_sns
|
||||
|
|
|
|||
|
|
@ -593,9 +593,9 @@ def test_send_receive_message_with_attributes():
|
|||
},
|
||||
)
|
||||
|
||||
messages = conn.receive_message(QueueUrl=queue.url, MaxNumberOfMessages=2)[
|
||||
"Messages"
|
||||
]
|
||||
messages = conn.receive_message(
|
||||
QueueUrl=queue.url, MaxNumberOfMessages=2, MessageAttributeNames=["timestamp"]
|
||||
)["Messages"]
|
||||
|
||||
message1 = messages[0]
|
||||
message2 = messages[1]
|
||||
|
|
@ -641,9 +641,9 @@ def test_send_receive_message_with_attributes_with_labels():
|
|||
},
|
||||
)
|
||||
|
||||
messages = conn.receive_message(QueueUrl=queue.url, MaxNumberOfMessages=2)[
|
||||
"Messages"
|
||||
]
|
||||
messages = conn.receive_message(
|
||||
QueueUrl=queue.url, MaxNumberOfMessages=2, MessageAttributeNames=["timestamp"]
|
||||
)["Messages"]
|
||||
|
||||
message1 = messages[0]
|
||||
message2 = messages[1]
|
||||
|
|
@ -779,7 +779,14 @@ def test_send_message_with_attributes():
|
|||
|
||||
queue.write(message)
|
||||
|
||||
messages = conn.receive_message(queue)
|
||||
messages = conn.receive_message(
|
||||
queue,
|
||||
message_attributes=[
|
||||
"test.attribute_name",
|
||||
"test.binary_attribute",
|
||||
"test.number_attribute",
|
||||
],
|
||||
)
|
||||
|
||||
messages[0].get_body().should.equal(body)
|
||||
|
||||
|
|
@ -999,7 +1006,7 @@ def test_send_batch_operation_with_message_attributes():
|
|||
)
|
||||
queue.write_batch([message_tuple])
|
||||
|
||||
messages = queue.get_messages()
|
||||
messages = queue.get_messages(message_attributes=["name1"])
|
||||
messages[0].get_body().should.equal("test message 1")
|
||||
|
||||
for name, value in message_tuple[3].items():
|
||||
|
|
@ -1234,7 +1241,11 @@ def test_send_message_batch():
|
|||
["id_1", "id_2"]
|
||||
)
|
||||
|
||||
response = client.receive_message(QueueUrl=queue_url, MaxNumberOfMessages=10)
|
||||
response = client.receive_message(
|
||||
QueueUrl=queue_url,
|
||||
MaxNumberOfMessages=10,
|
||||
MessageAttributeNames=["attribute_name_1", "attribute_name_2"],
|
||||
)
|
||||
|
||||
response["Messages"][0]["Body"].should.equal("body_1")
|
||||
response["Messages"][0]["MessageAttributes"].should.equal(
|
||||
|
|
@ -1258,6 +1269,53 @@ def test_send_message_batch():
|
|||
)
|
||||
|
||||
|
||||
@mock_sqs
|
||||
def test_message_attributes_in_receive_message():
|
||||
sqs = boto3.resource("sqs", region_name="us-east-1")
|
||||
conn = boto3.client("sqs", region_name="us-east-1")
|
||||
conn.create_queue(QueueName="test-queue")
|
||||
queue = sqs.Queue("test-queue")
|
||||
|
||||
body_one = "this is a test message"
|
||||
|
||||
queue.send_message(
|
||||
MessageBody=body_one,
|
||||
MessageAttributes={
|
||||
"timestamp": {
|
||||
"StringValue": "1493147359900",
|
||||
"DataType": "Number.java.lang.Long",
|
||||
}
|
||||
},
|
||||
)
|
||||
messages = conn.receive_message(
|
||||
QueueUrl=queue.url, MaxNumberOfMessages=2, MessageAttributeNames=["timestamp"]
|
||||
)["Messages"]
|
||||
|
||||
messages[0]["MessageAttributes"].should.equal(
|
||||
{
|
||||
"timestamp": {
|
||||
"StringValue": "1493147359900",
|
||||
"DataType": "Number.java.lang.Long",
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
queue.send_message(
|
||||
MessageBody=body_one,
|
||||
MessageAttributes={
|
||||
"timestamp": {
|
||||
"StringValue": "1493147359900",
|
||||
"DataType": "Number.java.lang.Long",
|
||||
}
|
||||
},
|
||||
)
|
||||
messages = conn.receive_message(QueueUrl=queue.url, MaxNumberOfMessages=2)[
|
||||
"Messages"
|
||||
]
|
||||
|
||||
messages[0].get("MessageAttributes").should.equal(None)
|
||||
|
||||
|
||||
@mock_sqs
|
||||
def test_send_message_batch_errors():
|
||||
client = boto3.client("sqs", region_name="us-east-1")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue