Line data Source code
1 : using System;
2 : using Cqrs.Configuration;
3 : using Cqrs.Tests.Substitutes;
4 : using NUnit.Framework;
5 :
6 : namespace Cqrs.Tests.Bus
7 : {
8 : [TestFixture]
9 : public class When_registering_handlers
10 0 : {
11 : private BusRegistrar _register;
12 : private TestDependencyResolver _locator;
13 :
14 : [SetUp]
15 0 : public void Setup()
16 : {
17 : _locator = new TestDependencyResolver(null);
18 : _register = new BusRegistrar(_locator);
19 : if (TestHandleRegistrar.HandlerList.Count == 0)
20 : _register.Register(GetType());
21 : }
22 :
23 : [Test]
24 0 : public void Should_register_all_handlers()
25 : {
26 : Assert.AreEqual(3, TestHandleRegistrar.HandlerList.Count);
27 : }
28 :
29 : [Test]
30 0 : public void Should_be_able_to_run_all_handlers()
31 : {
32 : foreach (var item in TestHandleRegistrar.HandlerList)
33 : {
34 : var @event = Activator.CreateInstance(item.Type);
35 : item.Handler(@event);
36 : }
37 : foreach (var handler in _locator.Handlers)
38 : {
39 : Assert.That(handler.TimesRun, Is.EqualTo(1));
40 : }
41 : }
42 : }
43 : }
|