Beispiel #1
0
        public void Can_send_and_receive_message_with_Attributes()
        {
            var queueDef = sqsQueueManager.CreateQueue("TestMq");
            var buffer   = sqsMqBufferFactory.GetOrCreate(queueDef);

            var msgBody = "Test Body";

            buffer.Send(new SendMessageRequest
            {
                QueueUrl          = buffer.QueueDefinition.QueueUrl,
                MessageBody       = msgBody,
                MessageAttributes = new Dictionary <string, MessageAttributeValue>
                {
                    { "Custom", new MessageAttributeValue {
                          DataType = "String", StringValue = "Header"
                      } },
                }
            });

            var responseMsg = buffer.Receive(new ReceiveMessageRequest
            {
                QueueUrl = buffer.QueueDefinition.QueueUrl,
                MessageAttributeNames = new List <string> {
                    "All"
                },
            });

            Assert.That(responseMsg.Body, Is.EqualTo(msgBody));

            Assert.That(responseMsg.MessageAttributes["Custom"].StringValue, Is.EqualTo("Header"));
        }
Beispiel #2
0
        private ISqsMqBuffer GetNewMqBuffer(int?visibilityTimeoutSeconds = null,
                                            int?receiveWaitTimeSeconds   = null,
                                            bool?disasbleBuffering       = null)
        {
            var qd     = sqsQueueManager.CreateQueue(GetNewId(), visibilityTimeoutSeconds, receiveWaitTimeSeconds, disasbleBuffering);
            var buffer = sqsMqBufferFactory.GetOrCreate(qd);

            return(buffer);
        }