public IActionResult CreateUserCustomerRelationship( [FromBody] CreateUserCustomerRelationshipEvent userCustomerRelationship) { try { userCustomerRelationship.ReceivedUTC = DateTime.UtcNow; if (customerService.GetCustomer(userCustomerRelationship.CustomerUID) == null) { logger.LogInformation(Messages.CustomerDoesntExist); return(BadRequest(Messages.CustomerDoesntExist)); } if (userCustomerService.GetCustomerUser(userCustomerRelationship.CustomerUID, userCustomerRelationship.UserUID) != null) { logger.LogInformation(Messages.CustomerUserAlreadyExists); return(BadRequest(Messages.CustomerUserAlreadyExists)); } if (customerService.CreateUserCustomerRelationship(userCustomerRelationship)) { return(Ok()); } logger.LogWarning(Messages.UnableToSaveToDb); return(BadRequest(Messages.UnableToSaveToDb)); } catch (Exception ex) { logger.LogError(string.Format(Messages.ExceptionOccured, ex.Message, ex.StackTrace)); return(StatusCode((int)HttpStatusCode.InternalServerError, ex.Message)); } }
public void GetCustomerUser_ValidCustomerUser_ReturnsResult() { //Arrange var customerUser = new DbUserCustomer { fk_CustomerID = 88, fk_CustomerUID = Guid.NewGuid(), fk_UserUID = Guid.NewGuid(), LastUserUTC = DateTime.UtcNow, UserCustomerID = 123 }; var config = new ComparisonConfig { IgnoreObjectTypes = true, MaxMillisecondsDateDifference = 500, MaxDifferences = 0 }; var assetCustomerCompareLogic = new CompareLogic(config); transaction.Get <DbUserCustomer>(Arg.Any <string>()).Returns(new List <DbUserCustomer> { customerUser }); //Act var resultData = userCustomerService.GetCustomerUser(customerUser.fk_CustomerUID, customerUser.fk_UserUID); //Arrange Assert.NotNull(resultData); ComparisonResult compareResult = assetCustomerCompareLogic.Compare(customerUser, resultData); Assert.True(compareResult.Differences.Count == 0); }