Пример #1
0
        public void Connect_To_Controller_Should_Send_One_Event_To_EventStore()
        {
            var moqEventStore = new Mock <IEventStore>();
            var eventMetadata = new EventMetadata(Guid.NewGuid(), "TestCategory", "TestCorrelationId", Guid.NewGuid(), Guid.NewGuid(), DateTimeOffset.UtcNow);
            ConnectToControllerCommand cmd = new ConnectToControllerCommand(Guid.Parse(Configuration.GetSection("AppSettings").GetSection("ControllerId").Value));

            var p = new Domain.Controller(eventMetadata, moqEventStore.Object).ConnectToController(cmd);

            moqEventStore.Verify(m => m.SaveEvents(It.IsAny <CompositeAggregateId>(), It.IsAny <IEnumerable <IEvent> >()), Times.Once);
        }
Пример #2
0
            private static Method Method(Build that, Domain.Controller type, Domain.Method m)
            {
                var @params = m.GetArguments().Select(p => new Param(p.Type, p.Name, p.Required)).ToArray();

                var help = that.Controller(type.Name).Action(m.Name).Help();

                return(new Method(m.Name, type.Name, help)
                {
                    Parameters = new List <Param>(@params.ToArray())
                });
            }
Пример #3
0
        public void Should_Connect_To_Controller()
        {
            var moqEventStore = new Mock <IEventStore>();
            var eventMetadata = new EventMetadata(Guid.NewGuid(), "TestCategory", "TestCorrelationId", Guid.NewGuid(), Guid.NewGuid(), DateTimeOffset.UtcNow);
            ConnectToControllerCommand cmd = new ConnectToControllerCommand(Guid.Parse(Configuration.GetSection("AppSettings").GetSection("ControllerId").Value));

            var p = new Domain.Controller(eventMetadata, moqEventStore.Object).ConnectToController(cmd);

            var events = p.GetUncommittedEvents();

            events.ShouldNotBeEmpty();
            events.Count().ShouldBeGreaterThan(0);
            events.Count().ShouldBeLessThan(2);
            Assert.IsNotNull(p.AggregateGuid);
            Assert.AreNotEqual(Guid.Empty, p.AggregateGuid);
        }
Пример #4
0
 private static Controller Controller(Build that, Domain.Controller type)
 {
     return(new Controller(type.Name, type.GetControllerActionMethods().Select(m => Method(that, type, m)).ToArray()));
 }