public Task When(UserCreated domainEvent) { var projection = new UserDetailProjection { Id = domainEvent.Id, Name = domainEvent.Name }; return(_projectionWriter.Add(projection)); }
public GenericEventPublisher( UserDetailProjection userDetailProjection, PermissionDetailProjection permissionDetailProjection, PendingRequestsProjection pendingRequestsProjection, SystemDropdownProjection systemDropdownProjection, UserManagementProjection userManagementProjection, SystemActivityProjection systemActivityProjection, ApproverActivityProjection approverActivityProjection, PermissionTemplateProjection permissionTemplateProjection, DashboardProjection dashboardProjection, UserHistoryProjection userHistoryProjection ) { _userDetailProjection = userDetailProjection; _permissionDetailProjection = permissionDetailProjection; _pendingRequestsProjection = pendingRequestsProjection; _userManagementProjection = userManagementProjection; _systemDropdownProjection = systemDropdownProjection; _approverActivityProjection = approverActivityProjection; _systemActivityProjection = systemActivityProjection; _permissionTemplateProjection = permissionTemplateProjection; _dashBoardProjection = dashboardProjection; _userHistoryProjection = userHistoryProjection; }
public async void given_getuserbyid_query_queryprocessor_should_get_same_query_created_in_controller() { //Assemble var mockAgg = new UserControllerMockAggregate(); var id = new Guid(); var query = new GetPermissionByIdQuery(id); mockAgg.setup_processor_to_verify_getUserQueries_are_the_same(id); var controller = mockAgg.CreateUserController(); //Apply var result = await controller.Get(id); var projection = new UserDetailProjection() { FirstName = "Test", LastName = "Name", IsActive = true, IsAdmin = true, Department = "Testeeee", Position = "Deper", Email = "*****@*****.**", DateCreated = new DateTime(), UserId = new Guid(), PermissionList = "Permissions Here", }; var newProjection = new UserDetailProjection() { FirstName = projection.FirstName, LastName = projection.LastName, IsActive = projection.IsActive, IsAdmin = projection.IsAdmin, Department = projection.Department, Position = projection.Position, Email = projection.Email, DateCreated = projection.DateCreated, UserId = projection.UserId, PermissionList = projection.PermissionList }; //await projection.ListenForEvents(new UserCreatedEvent //{ // FirstName = projection.FirstName, // LastName = projection.LastName, // IsActive = projection.IsActive, // IsAdmin = projection.IsAdmin, // Department = projection.Department, // Position = projection.Position, // Email = projection.Email, // Id = projection.UserId, // PermissionList = new Dictionary<Guid, PermissionDetails>() //}); //await projection.ListenForEvents(new UserUpdatedEvent //{ // FirstName = projection.FirstName, // LastName = projection.LastName, // IsAdmin = projection.IsAdmin, // Department = projection.Department, // Position = projection.Position, // Email = projection.Email, // Id = projection.UserId, //}); //await projection.ListenForEvents(new UserPermissionGrantedEvent()); //await projection.ListenForEvents(new UserPermissionRequestDeniedEvent()); //await projection.ListenForEvents(new UserPermissionRevokedEvent()); //await projection.ListenForEvents(new UserDisabledEvent()); //await projection.ListenForEvents(new UserEnabledEvent()); //Assert //Assert.Equal(query, mockAgg.PermissionQuery); Assert.IsType <UserDetailProjectionDTO>(result); Assert.Equal(result.UserId, id); }