Exemplo n.º 1
0
        public void OnNextReturnsImmediatelyEvenIfMessageIsntEmitted()
        {
            bool received = false;

            _testObj.Messages.Subscribe(_ => received = true);

            _testObj.PublishAsync("Bleb").Wait();

            Assert.IsFalse(received);
        }
Exemplo n.º 2
0
        public void PublishBlocksUntilMessageHasBeenConsumed()
        {
            int subscriberThreadId = -1;

            _testObj.Messages.Subscribe(_ => subscriberThreadId = Thread.CurrentThread.ManagedThreadId);

            int threadId = Thread.CurrentThread.ManagedThreadId;

            var task = _testObj.PublishAsync("Bleb");

            Assert.AreNotEqual(-1, subscriberThreadId);
            Assert.AreEqual(threadId, subscriberThreadId);

            task.Wait();
        }