private async Task Update_User_Changes_Its_Name() { // GIVEN a user var userAddedRef = await CreateSampleUser(); // WHEN changing the user's name var dto = new UserAddUpdRequest { FirstName = "David", LastName = SampleLastName, Email = SampleEmail }; var userUpdated = await _userCommandService.Update(userAddedRef.Id !, dto); await SaveChanges(); // THEN Assert.True(userUpdated.IsSuccess); // The ID of the edited user remains the same Assert.Equal(userAddedRef.Id, userUpdated.Value.Id); // the user's name in the DB is correct var user = await _userQueryService.GetById(userAddedRef.Id !); Assert.True(user.IsSuccess); Assert.Equal("David", user.Value.FirstName); Assert.Equal(SampleLastName, user.Value.LastName); }
public async Task <IDomainResult <UserReference> > Create(UserAddUpdRequest dto) { var user = dto.ConvertToUser(); await DbSession.StoreAsync(user); var response = user.ToReference().RemoveEntityPrefixFromId(); return(DomainResult.Success(response)); }
private async Task <(string, string)> SeedTwoUsers() { var dto = new UserAddUpdRequest { FirstName = "Homer", LastName = "Simpson" }; var homerId = (await _userCmdService.Create(dto)).Value.Id !; dto.FirstName = "Marge"; var margeId = (await _userCmdService.Create(dto)).Value.Id !; await SaveChanges(); return(homerId, margeId); }
private async Task <string> SeedCurrentUsers() { var dto = new UserAddUpdRequest { FirstName = "Homer", LastName = "Simpson" }; var homer = await _userCmdService.Create(dto); if (!homer.IsSuccess) { throw new Exception("Failed to create a user for Homer"); } await SaveChanges(); return(homer.Value.Id !); }
private async Task <UserReference> UpdateUser(string id, string firstName, string lastName) { var dto = new UserAddUpdRequest { FirstName = firstName, LastName = lastName }; var updatedRef = await _userCommandService.Update(id, dto); if (!updatedRef.IsSuccess) { throw new Exception("Failed to update a user"); } await SaveChanges(); return(updatedRef.Value); }
private async Task <UserReference> CreateSampleUser() { var dto = new UserAddUpdRequest { FirstName = "Homer", LastName = "Simpson" }; var userAdded = await _userCommandService.Create(dto); if (!userAdded.IsSuccess) { throw new Exception("Failed to create a user"); } await SaveChanges(); return(userAdded.Value); }
private async Task <UserReference> CreateSampleUser() { var dto = new UserAddUpdRequest { FirstName = SampleFirstName, LastName = SampleLastName, Email = SampleEmail }; var userAddedRes = await _userCommandService.Create(dto); if (!userAddedRes.IsSuccess) { throw new System.Exception("Can't create a user"); } await SaveChanges(); return(userAddedRes.Value); }
private async Task <UserReference> CreateUser(string firstName, string lastName, string email) { var dto = new UserAddUpdRequest { FirstName = firstName, LastName = lastName, Email = email }; var userAddedRes = await _userCommandService.Create(dto); if (!userAddedRes.IsSuccess) { throw new System.Exception($"Can't create '{firstName} {lastName}' user"); } await SaveChanges(); return(userAddedRes.Value); }
public async Task <IDomainResult <UserReference> > Update(string id, UserAddUpdRequest dto) { var fullId = GetFullId(id); var user = await DbSession.LoadAsync <User>(fullId); if (user == null) { return(DomainResult.NotFound <UserReference>()); } var newRef = dto.ConvertToUser(user).ToReference().RemoveEntityPrefixFromId(); // Update the name in all references to this user foreach (var updateUserRef in _updateUserReferences) { updateUserRef.UpdateReferences(newRef); } return(DomainResult.Success(newRef)); }
private async Task <(string, string)> SeedTwoUsers() { var dto = new UserAddUpdRequest { FirstName = "Homer", LastName = "Simpson" }; var homer = await _userCmdService.Create(dto); if (!homer.IsSuccess) { throw new Exception("Failed to create a user for Homer"); } dto.FirstName = "Marge"; var marge = await _userCmdService.Create(dto); if (!marge.IsSuccess) { throw new Exception("Failed to create a user for Marge"); } await SaveChanges(); return(homer.Value.Id !, marge.Value.Id !); }
public Task <ActionResult <UserReference> > Update([FromServices] IUserCommandService service, [FromRoute] string id, UserAddUpdRequest dto ) => service.Update(id, dto).ToActionResultOfT();
public Task <ActionResult <UserReference> > Create([FromServices] IUserCommandService service, UserAddUpdRequest dto) => service.Create(dto).ToActionResultOfT();