Код
[Test]
public void TestHandlingStrings() {
var h1 = new StringHandler("handler 1");
var h2 = new StringHandler("handler 2");
int workersCount = activator.Bus.Advanced.Workers.Count;
activator.Bus.Advanced.Workers.SetNumberOfWorkers(0);
activator.Register(() => h1);
activator.Register(() => h2);
activator.Bus.Advanced.Workers.SetNumberOfWorkers(workersCount);
activator.Bus.Advanced.SyncBus.SendLocal("Good day, sir.");
}
выйдет почти сразу, поэтому, скорее всего, автобус никогда не получит ничего.
Если вы добавите немного Thread.Sleep(TimeSpan.FromSeconds(2));
в конце тест, держу пари, ваше сообщение будет получено:
[Test]
public void TestHandlingStrings() {
var h1 = new StringHandler("handler 1");
var h2 = new StringHandler("handler 2");
int workersCount = activator.Bus.Advanced.Workers.Count;
activator.Bus.Advanced.Workers.SetNumberOfWorkers(0);
activator.Register(() => h1);
activator.Register(() => h2);
activator.Bus.Advanced.Workers.SetNumberOfWorkers(workersCount);
activator.Bus.Advanced.SyncBus.SendLocal("Good day, sir.");
Thread.Sleep(TimeSpan.FromSeconds(2));
}