public void NumberOfWorkersIsLimitedByMaxParallelism()
        {
            var counter = new WorkerCounter();

            using (var adapter = new BuiltinHandlerActivator())
            {
                Configure.With(adapter)
                .Transport(t => t.UseInMemoryTransport(new InMemNetwork(), "worker-/parallelism-test"))
                .Options(o =>
                {
                    o.SetMaxParallelism(1);
                    o.SetNumberOfWorkers(10);

                    o.Decorate <IWorkerFactory>(c =>
                    {
                        counter.SetWorkerFactory(c.Get <IWorkerFactory>());

                        return(counter);
                    });
                })
                .Start();

                Thread.Sleep(TimeSpan.FromSeconds(1));
            }

            Assert.That(counter.NumberOfWorkersCreated, Is.EqualTo(1));
        }
        public void NumberOfWorkersIsLimitedByMaxParallelism()
        {
            var counter = new WorkerCounter();

            using (var adapter = new BuiltinHandlerActivator())
            {
                Configure.With(adapter)
                    .Transport(t => t.UseInMemoryTransport(new InMemNetwork(), "worker-/parallelism-test"))
                    .Options(o =>
                    {
                        o.SetMaxParallelism(1);
                        o.SetNumberOfWorkers(10);

                        o.Decorate<IWorkerFactory>(c =>
                        {
                            counter.SetWorkerFactory(c.Get<IWorkerFactory>());

                            return counter;
                        });
                    })
                    .Start();

                Thread.Sleep(TimeSpan.FromSeconds(1));
            }

            Assert.That(counter.NumberOfWorkersCreated, Is.EqualTo(1));
        }