public void ShouldHaveCreatedEvent() { // Arrange Guid expectedId = Guid.NewGuid(); string expectedName = "Name"; string expectedCode = "Code"; // Act Role actual = Role.Create(expectedId, expectedName, expectedCode); // Assert Assert.IsTrue(actual != null); Assert.IsTrue(actual.Events != null); Assert.IsTrue(actual.Events.Count == 1); var events = actual.FlushUncommitedEvents(); Assert.IsTrue(events != null); Assert.IsTrue(events.Length == 1); Assert.IsTrue(events[0] is RoleCreatedEvent); RoleCreatedEvent @event = events[0] as RoleCreatedEvent; Assert.IsTrue(@event.EntityId == expectedId); Assert.IsTrue(@event.Name == expectedName); Assert.IsTrue(@event.Code == expectedCode); }
public Task ExecuteAsync(HookType type, IDomainEntityContext <Role> context, CancellationToken cancellationToken) { switch (context.EditMode) { case EditMode.Create: context.AddEventAsync(RoleCreatedEvent.Create(_correlationIdProvider.Id, context.Entity.Id, _currentUser.Id), cancellationToken); break; case EditMode.Update: context.AddEventAsync(RoleUpdatedEvent.Create(_correlationIdProvider.Id, context.Entity.Id, _currentUser.Id), cancellationToken); break; case EditMode.Delete: context.AddEventAsync(RoleDeletedEvent.Create(_correlationIdProvider.Id, context.Entity.Id, _currentUser.Id), cancellationToken); break; } return(Task.CompletedTask); }
private void Apply(RoleCreatedEvent roleCreatedEvent) { OrganizationKey = roleCreatedEvent.OrganizationKey; Name = roleCreatedEvent.Name; RoleType = roleCreatedEvent.RoleType; }