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); }
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()) }); }
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); }
private static Controller Controller(Build that, Domain.Controller type) { return(new Controller(type.Name, type.GetControllerActionMethods().Select(m => Method(that, type, m)).ToArray())); }