public void MessageWithInternalHierarchy_DataSerialized() { ManualResetEvent ev = new ManualResetEvent(false); using (IBus busA = new RabbitMQBus(), busB = new RabbitMQBus()) { var data = new InternalHierarchy { Data = new List<Data> { new Car { Number = "324234" }, new Person { Id = 5 } } }; InternalHierarchy actual = null; using (ISubscriber subscriber = busA.CreateSubscriber(c => c.UseJsonSerializerSettings(new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }))) { subscriber.Subscribe((Action<InternalHierarchy>)(p => { actual = p; ev.Set(); })); subscriber.Open(); using (IPublisher publisher = busB.CreatePublisher(c => c.UseJsonSerializerSettings(new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }))) { publisher.Send(data); } ev.WaitOne(TimeSpan.FromSeconds(5)); actual.ShouldBeEquivalentTo(data); } } }
public void MessageWithInternalHierarchy_DataSerialized() { ManualResetEvent ev = new ManualResetEvent(false); using (IBus busA = new RabbitMQBus(), busB = new RabbitMQBus()) { var data = new InternalHierarchy { Data = new List <Data> { new Car { Number = "324234" }, new Person { Id = 5 } } }; InternalHierarchy actual = null; using (ISubscriber subscriber = busA.CreateSubscriber(c => c.UseJsonSerializerSettings(new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }))) { subscriber.Subscribe((Action <InternalHierarchy>)(p => { actual = p; ev.Set(); })); subscriber.Open(); using (IPublisher publisher = busB.CreatePublisher(c => c.UseJsonSerializerSettings(new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All }))) { publisher.Send(data); } ev.WaitOne(TimeSpan.FromSeconds(5)); actual.ShouldBeEquivalentTo(data); } } }