コード例 #1
0
        public void Build_throws_exception_if_object_not_provided()
        {
            var builder = new AzureIntegrationMessageBuilder();

            var ex = Should.Throw <InvalidOperationException>(() => builder.Build());

            ex.Message.ShouldBe("An object to be serialized must be provided to the WithObject method before calling build.");
        }
コード例 #2
0
        public void WithObject_returns_this()
        {
            var builder = new AzureIntegrationMessageBuilder();

            var @return = builder.WithObject(_integrationEvent);

            @return.ShouldBe <IBusMessageBuilder <IIntegrationEvent, Message> >(builder);
        }
コード例 #3
0
        public void Build_returns_AzureServiceBusMessage()
        {
            var builder = new AzureIntegrationMessageBuilder();

            builder.WithObject(_integrationEvent);

            var message = builder.Build();

            message.ShouldBeOfType <Message>();
        }
コード例 #4
0
        public void Build_returns_message_wrapping_provided_event()
        {
            var builder = new AzureIntegrationMessageBuilder();

            var message = builder
                          .WithObject(_integrationEvent)
                          .Build();

            dynamic deserializedEvent = JsonConvert.DeserializeObject(Encoding.UTF8.GetString(message.Body));

            ((string)deserializedEvent["SomeProperty"]).ShouldBe("Hello world");
        }
コード例 #5
0
        public void Build_contains_message_with_expected_properties()
        {
            var builder = new AzureIntegrationMessageBuilder();

            var message = builder
                          .WithObject(_integrationEvent)
                          .Build();

            message.ShouldSatisfyAllConditions(
                () => message.ContentType.ShouldBe("application/json"),
                () => message.Label.ShouldBe("TestIntegrationEvent"),
                () => message.MessageId.ShouldNotBe(default(Guid).ToString()),
                () => message.UserProperties["Publisher"].ShouldBe(ApplicationInfo.Name));
        }