示例#1
0
        /// <summary>
        /// Sends a MessageRejected message to the given receiver address.
        /// </summary>
        /// <param name="rejectedMessage">The rejected message.</param>
        /// <param name="correlationId">The correlation identifier.</param>
        protected void SendRejected(string rejectedMessage, Guid correlationId)
        {
            var response = new MessageRejected(
                rejectedMessage,
                correlationId,
                Guid.NewGuid(),
                this.TimeNow());

            this.SendMessage(response);
        }
示例#2
0
        private void SendRejected(string rejectedMessage, Address receiver)
        {
            var response = new MessageRejected(
                rejectedMessage,
                Guid.Empty,
                Guid.NewGuid(),
                this.TimeNow());

            this.SendMessage(response, receiver);
        }
        internal void CanSerializeAndDeserialize_MessageRejected()
        {
            // Arrange
            var correlationId = Guid.NewGuid();
            var message       = "malformed message";

            var response = new MessageRejected(
                message,
                correlationId,
                Guid.NewGuid(),
                StubZonedDateTime.UnixEpoch());

            // Act
            var packed   = this.serializer.Serialize(response);
            var unpacked = (MessageRejected)this.serializer.Deserialize(packed);

            // Assert
            Assert.Equal(response, unpacked);
            Assert.Equal(correlationId, unpacked.CorrelationId);
            Assert.Equal(message, unpacked.Message);
            this.Output.WriteLine(Convert.ToBase64String(packed));
            this.Output.WriteLine(Encoding.UTF8.GetString(packed));
        }