コード例 #1
0
 static void SendEvent(Object sender, ControllerConnectedEventArgs e)
 {
     var tenantId = Guid.Parse(Configuration.GetSection("AppSettings").GetSection("ControllerId").Value);
     ConnectToControllerCommand cmd = new ConnectToControllerCommand(tenantId);
     var eventMetadata = new EventMetadata(cmd.ControllerId, "Controller", cmd.ControllerId.ToString(), cmd.ControllerId, cmd.ControllerId, DateTimeOffset.UtcNow);
     var controller    = new Domain.Controller(eventMetadata, EventStore).ConnectToController(cmd);
 }
コード例 #2
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);
        }
コード例 #3
0
        public Controller ConnectToController(ConnectToControllerCommand cmd)
        {
            var controllerId = cmd.ControllerId;
            var connectToControllerCommand = new ConnectToController(controllerId);
            var commandBus = CommandBus.Instance;

            commandBus.Execute(connectToControllerCommand);
            var controller = new Controller(controllerId, EventMetadata, EventStore);

            return(controller);
        }
コード例 #4
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);
        }