Skip to content

Commit 7c9d121

Browse files
committed
Update SQS test to be compatible with JSON API
1 parent 76f8d14 commit 7c9d121

23 files changed

+246
-282
lines changed

psalm.baseline.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -283,15 +283,15 @@
283283
<code>$items</code>
284284
</LessSpecificReturnStatement>
285285
<MoreSpecificReturnType>
286-
<code><![CDATA[array<QueueAttributeName::*>]]></code>
286+
<code><![CDATA[array<QueueAttributeName::*, string>]]></code>
287287
</MoreSpecificReturnType>
288288
</file>
289289
<file src="src/Service/Sqs/src/Result/ReceiveMessageResult.php">
290290
<LessSpecificReturnStatement>
291291
<code>$items</code>
292292
</LessSpecificReturnStatement>
293293
<MoreSpecificReturnType>
294-
<code><![CDATA[array<MessageSystemAttributeName::*>]]></code>
294+
<code><![CDATA[array<MessageSystemAttributeName::*, string>]]></code>
295295
</MoreSpecificReturnType>
296296
</file>
297297
<file src="src/Service/Lambda/src/Result/FunctionConfiguration.php">

src/Service/Sqs/tests/Unit/Input/ChangeMessageVisibilityBatchRequestTest.php

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,19 @@ public function testRequest(): void
2222
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibilityBatch.html */
2323
$expected = '
2424
POST / HTTP/1.0
25-
Content-Type: application/x-www-form-urlencoded
25+
Content-Type: application/x-amz-json-1.0
26+
x-amz-target: AmazonSQS.ChangeMessageVisibilityBatch
2627
27-
Action=ChangeMessageVisibilityBatch
28-
&ChangeMessageVisibilityBatchRequestEntry.1.Id=qwertyuiop
29-
&ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=MbZj6wDWli%2BJvwwJaBV%2B3dcjk2YW2vA3%2BSTFFljT
30-
&ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=60
31-
&QueueUrl=queueUrl
32-
&Version=2012-11-05
33-
';
28+
{
29+
"QueueUrl": "queueUrl",
30+
"Entries": [
31+
{
32+
"Id": "qwertyuiop",
33+
"ReceiptHandle": "MbZj6wDWli+JvwwJaBV+3dcjk2YW2vA3+STFFljT",
34+
"VisibilityTimeout": 60
35+
}
36+
]
37+
}';
3438

3539
self::assertRequestEqualsHttpRequest($expected, $input->request());
3640
}

src/Service/Sqs/tests/Unit/Input/ChangeMessageVisibilityRequestTest.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ public function testRequest(): void
1818
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibility.html */
1919
$expected = '
2020
POST / HTTP/1.0
21-
Content-Type: application/x-www-form-urlencoded
21+
Content-Type: application/x-amz-json-1.0
22+
x-amz-target: AmazonSQS.ChangeMessageVisibility
2223
23-
Action=ChangeMessageVisibility
24-
&Version=2012-11-05
25-
&QueueUrl=queueUrl
26-
&ReceiptHandle=MbZj6wDWli%2BJvwwJaBV%2B3dcjk2YW2vA3%2BSTFFljT
27-
&VisibilityTimeout=60
28-
';
24+
{
25+
"QueueUrl": "queueUrl",
26+
"ReceiptHandle": "MbZj6wDWli+JvwwJaBV+3dcjk2YW2vA3+STFFljT",
27+
"VisibilityTimeout": 60
28+
}';
2929

3030
self::assertRequestEqualsHttpRequest($expected, $input->request());
3131
}

src/Service/Sqs/tests/Unit/Input/CreateQueueRequestTest.php

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,18 @@ public function testRequest(): void
1818
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html */
1919
$expected = '
2020
POST / HTTP/1.0
21-
Content-Type: application/x-www-form-urlencoded
21+
Content-Type: application/x-amz-json-1.0
22+
x-amz-target: AmazonSQS.CreateQueue
2223
23-
Action=CreateQueue
24-
&Version=2012-11-05
25-
&QueueName=MyQueue
26-
&Attribute.1.Name=DelaySeconds
27-
&Attribute.1.Value=45
28-
&Tag.1.Key=team
29-
&Tag.1.Value=Engineering
30-
';
24+
{
25+
"QueueName":"MyQueue",
26+
"Attributes": {
27+
"DelaySeconds": "45"
28+
},
29+
"tags": {
30+
"team": "Engineering"
31+
}
32+
}';
3133

3234
self::assertRequestEqualsHttpRequest($expected, $input->request());
3335
}

src/Service/Sqs/tests/Unit/Input/DeleteMessageBatchRequestTest.php

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,18 @@ public function testRequest(): void
2121
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html */
2222
$expected = '
2323
POST / HTTP/1.0
24-
Content-Type: application/x-www-form-urlencoded
24+
Content-Type: application/x-amz-json-1.0
25+
x-amz-target: AmazonSQS.DeleteMessageBatch
2526
26-
Action=DeleteMessageBatch
27-
&DeleteMessageBatchRequestEntry.1.Id=qwertyuiop
28-
&DeleteMessageBatchRequestEntry.1.ReceiptHandle=MbZj6wDWli%2BJvwwJaBV%2B3dcjk2YW2vA3%2BSTFFljT
29-
&QueueUrl=queueUrl
30-
&Version=2012-11-05
31-
';
27+
{
28+
"QueueUrl": "queueUrl",
29+
"Entries": [
30+
{
31+
"Id": "qwertyuiop",
32+
"ReceiptHandle": "MbZj6wDWli+JvwwJaBV+3dcjk2YW2vA3+STFFljT"
33+
}
34+
]
35+
}';
3236

3337
self::assertRequestEqualsHttpRequest($expected, $input->request());
3438
}

src/Service/Sqs/tests/Unit/Input/DeleteMessageRequestTest.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ public function testRequest(): void
1717
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessage.html */
1818
$expected = '
1919
POST / HTTP/1.0
20-
Content-Type: application/x-www-form-urlencoded
20+
Content-Type: application/x-amz-json-1.0
21+
x-amz-target: AmazonSQS.DeleteMessage
2122
22-
Action=DeleteMessage
23-
&Version=2012-11-05
24-
&QueueUrl=queueUrl
25-
&ReceiptHandle=MbZj6wDWli%2BJvwwJaBV%2B3dcjk2YW2vA3%2BSTFFljT
26-
';
23+
{
24+
"QueueUrl": "queueUrl",
25+
"ReceiptHandle": "MbZj6wDWli+JvwwJaBV+3dcjk2YW2vA3+STFFljT"
26+
}';
2727

2828
self::assertRequestEqualsHttpRequest($expected, $input->request());
2929
}

src/Service/Sqs/tests/Unit/Input/DeleteQueueRequestTest.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ public function testRequest(): void
1616
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteQueue.html */
1717
$expected = '
1818
POST / HTTP/1.0
19-
Content-Type: application/x-www-form-urlencoded
19+
Content-Type: application/x-amz-json-1.0
20+
x-amz-target: AmazonSQS.DeleteQueue
2021
21-
Action=DeleteQueue
22-
&Version=2012-11-05
23-
&QueueUrl=queueUrl
24-
';
22+
{
23+
"QueueUrl":"queueUrl"
24+
}';
2525

2626
self::assertRequestEqualsHttpRequest($expected, $input->request());
2727
}

src/Service/Sqs/tests/Unit/Input/GetQueueAttributesRequestTest.php

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,13 @@ public function testRequest(): void
1717
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueAttributes.html */
1818
$expected = '
1919
POST / HTTP/1.0
20-
Content-Type: application/x-www-form-urlencoded
20+
Content-Type: application/x-amz-json-1.0
21+
x-amz-target: AmazonSQS.GetQueueAttributes
2122
22-
Action=GetQueueAttributes
23-
&Version=2012-11-05
24-
&QueueUrl=queueUrl
25-
&AttributeName.1=VisibilityTimeout
26-
&AttributeName.2=DelaySeconds
27-
&AttributeName.3=ReceiveMessageWaitTimeSeconds
28-
';
23+
{
24+
"QueueUrl": "queueUrl",
25+
"AttributeNames": ["VisibilityTimeout", "DelaySeconds", "ReceiveMessageWaitTimeSeconds"]
26+
}';
2927

3028
self::assertRequestEqualsHttpRequest($expected, $input->request());
3129
}

src/Service/Sqs/tests/Unit/Input/GetQueueUrlRequestTest.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ public function testRequest(): void
1717
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueUrl.html */
1818
$expected = '
1919
POST / HTTP/1.0
20-
Content-Type: application/x-www-form-urlencoded
20+
Content-Type: application/x-amz-json-1.0
21+
x-amz-target: AmazonSQS.GetQueueUrl
2122
22-
Action=GetQueueUrl
23-
&Version=2012-11-05
24-
&QueueName=MyQueue
25-
&QueueOwnerAWSAccountId=123456
26-
';
23+
{
24+
"QueueName": "MyQueue",
25+
"QueueOwnerAWSAccountId": "123456"
26+
}';
2727

2828
self::assertRequestEqualsHttpRequest($expected, $input->request());
2929
}

src/Service/Sqs/tests/Unit/Input/ListQueuesRequestTest.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,12 @@ public function testRequest(): void
1616
/** @see https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueues.html */
1717
$expected = '
1818
POST / HTTP/1.0
19-
Content-Type: application/x-www-form-urlencoded
19+
Content-Type: application/x-amz-json-1.0
20+
x-amz-target: AmazonSQS.ListQueues
2021
21-
Action=ListQueues
22-
&Version=2012-11-05
23-
&QueueNamePrefix=M
24-
';
22+
{
23+
"QueueNamePrefix": "M"
24+
}';
2525

2626
self::assertRequestEqualsHttpRequest($expected, $input->request());
2727
}

0 commit comments

Comments
 (0)