public virtual void TearDown()
 {
     Queue.Stop();
     Queue = null;
     Consumer.Dispose();
     Consumer = null;
 }
        public void while_queue_is_busy_should_crash_with_timeout()
        {
            var consumer  = new WaitingConsumer(1);
            var busyQueue = QueuedHandler.CreateQueuedHandler(consumer, "busy_test_queue", new QueueStatsManager(), watchSlowMsg: false,
                                                              threadStopWaitTimeout: TimeSpan.FromMilliseconds(100));
            var waitHandle   = new ManualResetEvent(false);
            var handledEvent = new ManualResetEvent(false);

            try {
                busyQueue.Start();
                busyQueue.Publish(new DeferredExecutionTestMessage(() => {
                    handledEvent.Set();
                    waitHandle.WaitOne();
                }));

                handledEvent.WaitOne();
                Assert.Throws <TimeoutException>(() => busyQueue.Stop());
            } finally {
                waitHandle.Set();
                consumer.Wait();

                busyQueue.Stop();
                waitHandle.Dispose();
                handledEvent.Dispose();
                consumer.Dispose();
            }
        }
Esempio n. 3
0
        public void while_queue_is_busy_should_crash_with_timeout()
        {
            var consumer = new WaitingConsumer(1);
            var busyQueue = new Core.Bus.QueuedHandler(consumer,
                                                       "busy_test_queue",
                                                       watchSlowMsg: false,
                                                       threadStopWaitTimeoutMs: 100);
            var waitHandle = new ManualResetEvent(false);
            var handledEvent = new ManualResetEvent(false);
            try
            {
                busyQueue.Start();
                busyQueue.Publish(new DeferredExecutionTestMessage(() =>
                {
                    handledEvent.Set();
                    waitHandle.WaitOne();
                }));

                handledEvent.WaitOne();
                Assert.Throws<TimeoutException>(() => busyQueue.Stop());
            }
            finally
            {
                waitHandle.Set();
                consumer.Wait();

                busyQueue.Stop();
                waitHandle.Dispose();
                handledEvent.Dispose();
                consumer.Dispose();
            }
        }
 public override void TearDown()
 {
     _queue = null;
     _consumer.Dispose();
     _consumer = null;
 }
 public override void SetUp()
 {
     _consumer = new WaitingConsumer(0);
     _queue = new Core.Bus.QueuedHandler(_consumer,"waiting_queue",watchSlowMsg: false, threadStopWaitTimeoutMs:100);
 }
 public virtual void SetUp()
 {
     Consumer = new WaitingConsumer(0);
     Queue = new QueuedHandler(Consumer, "waiting_queue", watchSlowMsg: false, threadStopWaitTimeoutMs: 100);
 }
 public virtual void SetUp()
 {
     Consumer = new WaitingConsumer(0);
     Queue = _queuedHandlerFactory(Consumer, "waiting_queue", TimeSpan.FromMilliseconds(5000));
 }