@abetomo/simply-imitated-sqs
Advanced tools
Comparing version 0.2.0 to 0.3.0
@@ -60,2 +60,34 @@ 'use strict' | ||
describe('SendMessageBatch()', () => { | ||
const params = { | ||
QueueUrl: 'QueueUrl', | ||
'SendMessageBatchRequestEntry.1.Id': 'a', | ||
'SendMessageBatchRequestEntry.1.MessageBody': '1', | ||
'SendMessageBatchRequestEntry.2.Id': 'b', | ||
'SendMessageBatchRequestEntry.2.MessageBody': '2' | ||
} | ||
const expected = `<SendMessageBatchResponse> | ||
<SendMessageBatchResult> | ||
<SendMessageBatchResultEntry> | ||
<Id>entry.Id</Id> | ||
<MessageId>SimplyImitatedSQS-MessageId-0</MessageId> | ||
<MD5OfMessageBody>c4ca4238a0b923820dcc509a6f75849b</MD5OfMessageBody> | ||
</SendMessageBatchResultEntry> | ||
<SendMessageBatchResultEntry> | ||
<Id>entry.Id</Id> | ||
<MessageId>SimplyImitatedSQS-MessageId-1</MessageId> | ||
<MD5OfMessageBody>c81e728d9d4c2f636f067f89cc14862c</MD5OfMessageBody> | ||
</SendMessageBatchResultEntry> | ||
</SendMessageBatchResult> | ||
<ResponseMetadata> | ||
<RequestId>SimplyImitatedSQS-RequestId</RequestId> | ||
</ResponseMetadata> | ||
</SendMessageBatchResponse>` | ||
test('XML is returned', () => { | ||
expect(server.SendMessageBatch(params)).toBe(expected) | ||
}) | ||
}) | ||
describe('ReceiveMessage()', () => { | ||
@@ -62,0 +94,0 @@ const expected = (receiptHandle) => { |
@@ -50,2 +50,33 @@ 'use strict' | ||
SendMessageBatch (params) { | ||
const entryXML = (() => { | ||
const entries = [] | ||
for (let i = 1; i <= 10; i++) { | ||
if (params[`SendMessageBatchRequestEntry.${i}.Id`] && | ||
params[`SendMessageBatchRequestEntry.${i}.MessageBody`]) { | ||
entries.push({ | ||
Id: params[`SendMessageBatchRequestEntry.${i}.Id`], | ||
MessageBody: params[`SendMessageBatchRequestEntry.${i}.MessageBody`] | ||
}) | ||
} | ||
} | ||
return entries.map((entry, i) => { | ||
this.sqs.vsq.send(entry.MessageBody) | ||
return ` | ||
<SendMessageBatchResultEntry> | ||
<Id>entry.Id</Id> | ||
<MessageId>SimplyImitatedSQS-MessageId-${i}</MessageId> | ||
<MD5OfMessageBody>${this.sqs.md5_(entry.MessageBody)}</MD5OfMessageBody> | ||
</SendMessageBatchResultEntry>` | ||
}).join('\n') | ||
})() | ||
return `<SendMessageBatchResponse> | ||
<SendMessageBatchResult>${entryXML} | ||
</SendMessageBatchResult> | ||
<ResponseMetadata> | ||
<RequestId>SimplyImitatedSQS-RequestId</RequestId> | ||
</ResponseMetadata> | ||
</SendMessageBatchResponse>` | ||
} | ||
ReceiveMessage (params) { | ||
@@ -52,0 +83,0 @@ const response = this.sqs.vsq.receive() |
{ | ||
"name": "@abetomo/simply-imitated-sqs", | ||
"version": "0.2.0", | ||
"version": "0.3.0", | ||
"description": "Simply imitated SQS for testing", | ||
"main": "index.js", | ||
"scripts": { | ||
"test": "standard && jest" | ||
"lint": "standard", | ||
"test": "npm run lint && npm run unit", | ||
"unit": "jest" | ||
}, | ||
@@ -9,0 +11,0 @@ "bin": { |
# Simply-imitated-SQS-for-testing | ||
[![npm version](https://badge.fury.io/js/%40abetomo%2Fsimply-imitated-sqs.svg)](https://badge.fury.io/js/%40abetomo%2Fsimply-imitated-sqs) | ||
Simply imitated SQS for testing | ||
@@ -3,0 +6,0 @@ |
63563
780
157