Skip to content
This repository has been archived by the owner on Oct 23, 2024. It is now read-only.

Commit

Permalink
Merge pull request #23 from BonnierNews/reject-message-error-message
Browse files Browse the repository at this point in the history
Reject message error message
  • Loading branch information
maxolofsson1 authored Oct 12, 2023
2 parents 0f4ac52 + fa038c1 commit 64dc516
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 2 deletions.
1 change: 1 addition & 0 deletions lib/context.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ export default function buildContext(correlationId, key) {
logger,
findAttribute,
findOrReject: findOrReject.bind(findOrReject, rejectUnless),
key,
};
}

Expand Down
3 changes: 2 additions & 1 deletion lib/message-handler.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ export default async function messageHandler(recipeMap, req, res) {
const correlationId = messageData.attributes.correlationId || getCorrelationId(messageData);
const { messageId, message, deliveryAttempt } = messageData;
const context = buildContext(correlationId, key);

const { logger } = context;

if (!key) {
Expand Down Expand Up @@ -124,7 +125,7 @@ export default async function messageHandler(recipeMap, req, res) {
} catch (error) {
if (error.rejected) {
logger.error(`Rejected message with correlationId: ${correlationId}. Error: ${error}. Message: ${message}`);
await rejectMessage({ ...message, error: JSON.stringify(error) }, { key });
await rejectMessage({ ...message, error: { message: error.extraMessage } }, { key });
return res.status(200).send();
}
if (error.retry) {
Expand Down
3 changes: 2 additions & 1 deletion test/feature/reject-message-feature.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Feature("Reject message", () => {
name: "advertisement-order",
sequence: [
route(".perform.step-1", (message, { rejectIf }) => {
rejectIf(true);
rejectIf(true, "rejected because..");
}),
],
},
Expand All @@ -47,6 +47,7 @@ Feature("Reject message", () => {
And("that message should have published to dead letter queue", () => {
const deadLetterMessage = fakePubSub.recordedMessages().pop();
deadLetterMessage.topic.should.eql(config.deadLetterTopic);
deadLetterMessage.message.error.should.eql({ message: "rejected because.." });
deadLetterMessage.attributes.key.should.eql("sequence.advertisement-order.perform.step-1");
});

Expand Down

0 comments on commit 64dc516

Please sign in to comment.