public void GetPropertyType_for_missing_property_is_null() { var pp = new DefaultPropertyProvider(); Assert.Null(pp.GetPropertyType("missing")); }
public async Task ShouldCorrectlyPublishAndSubscribeToMulipleMultiplexedTopics() { const string brokerUri = "tcp://localhost:61616"; const string topicName1 = "Obvs.Tests.ShouldCorrectlyPublishAndSubscribeToMulipleMultiplexedTopics1"; const string topicName2 = "Obvs.Tests.ShouldCorrectlyPublishAndSubscribeToMulipleMultiplexedTopics2"; IMessagePropertyProvider<IMessage> getProperties = new DefaultPropertyProvider<IMessage>(); IConnectionFactory connectionFactory = new ConnectionFactory(brokerUri); var lazyConnection = new Lazy<IConnection>(() => { var conn = connectionFactory.CreateConnection(); conn.Start(); return conn; }); IMessagePublisher<IMessage> publisher1 = new MessagePublisher<IMessage>( lazyConnection, new ActiveMQTopic(topicName1), new JsonMessageSerializer(), getProperties, _testScheduler); IMessagePublisher<IMessage> publisher2 = new MessagePublisher<IMessage>( lazyConnection, new ActiveMQTopic(topicName2), new JsonMessageSerializer(), getProperties, _testScheduler); IMessageDeserializer<IMessage>[] deserializers = { new JsonMessageDeserializer<TestMessage>(), new JsonMessageDeserializer<TestMessage2>() }; IMessageSource<IMessage> source = new MergedMessageSource<IMessage>(new[] { new MessageSource<IMessage>( lazyConnection, deserializers, new ActiveMQTopic(topicName1)), new MessageSource<IMessage>( lazyConnection, deserializers, new ActiveMQTopic(topicName2)) }); source.Messages.Subscribe(Console.WriteLine); await publisher1.PublishAsync(new TestMessage { Id = 1234 }); await publisher1.PublishAsync(new TestMessage2 { Id = 4567 }); await publisher2.PublishAsync(new TestMessage { Id = 8910 }); await publisher2.PublishAsync(new TestMessage2 { Id = 1112 }); Thread.Sleep(TimeSpan.FromSeconds(3)); }
public void ShouldCorrectlyPublishAndSubscribeToMulipleMultiplexedTopics() { const string brokerUri = "tcp://localhost:61616"; const string topicName1 = "Obvs.Tests.ShouldCorrectlyPublishAndSubscribeToMulipleMultiplexedTopics1"; const string topicName2 = "Obvs.Tests.ShouldCorrectlyPublishAndSubscribeToMulipleMultiplexedTopics2"; IMessagePropertyProvider <IMessage> getProperties = new DefaultPropertyProvider <IMessage>(); IConnectionFactory connectionFactory = new ConnectionFactory(brokerUri); var lazyConnection = new Lazy <IConnection>(() => { var conn = connectionFactory.CreateConnection(); conn.Start(); return(conn); }); var scheduler = new EventLoopScheduler(); IMessagePublisher <IMessage> publisher1 = new MessagePublisher <IMessage>( lazyConnection, new ActiveMQTopic(topicName1), new JsonMessageSerializer(), getProperties, scheduler); IMessagePublisher <IMessage> publisher2 = new MessagePublisher <IMessage>( lazyConnection, new ActiveMQTopic(topicName2), new JsonMessageSerializer(), getProperties, scheduler); IMessageDeserializer <IMessage>[] deserializers = { new JsonMessageDeserializer <TestMessage>(), new JsonMessageDeserializer <TestMessage2>() }; IMessageSource <IMessage> source = new MergedMessageSource <IMessage>(new[] { new MessageSource <IMessage>( lazyConnection, deserializers, new ActiveMQTopic(topicName1)), new MessageSource <IMessage>( lazyConnection, deserializers, new ActiveMQTopic(topicName2)) }); source.Messages.Subscribe(Console.WriteLine); publisher1.PublishAsync(new TestMessage { Id = 1234 }); publisher1.PublishAsync(new TestMessage2 { Id = 4567 }); publisher2.PublishAsync(new TestMessage { Id = 8910 }); publisher2.PublishAsync(new TestMessage2 { Id = 1112 }); Thread.Sleep(TimeSpan.FromSeconds(3)); }