public void UnitTest1(string userName, string password) { var ExpectedResult = _porwalGeneralStoreContext .CustomerInfo .FirstOrDefault( x => x.Phone.Equals(userName, StringComparison.OrdinalIgnoreCase) && x.Password.Equals(password)); var ActualResult = _userLayer.GetUserDetail(new LoginForm() { UserName = userName, Password = password }); Assert.NotNull(ActualResult); Assert.True(ExpectedResult.Id == ActualResult.UserId); Assert.True(ExpectedResult.CustomerName == ActualResult.CustomerName); Assert.True(ExpectedResult.FirstName == ActualResult.FirstName); Assert.True(ExpectedResult.LastName == ActualResult.LastName); Assert.True(ExpectedResult.City == ActualResult.City); Assert.True(ExpectedResult.Phone == ActualResult.Phone); }
public LoginFormResponse AuthenticateUser(LoginForm loginForm) { LoginFormResponse loginFormResponse = new LoginFormResponse() { StatusCode = 200 }; try { if (loginForm == null) { loginFormResponse.StatusCode = 400; loginFormResponse.ErrorList = new List <LoginValidationResponse>() { new LoginValidationResponse() { Code = 1001, Message = "Request Object can't be blank." } }; return(loginFormResponse); } if (string.IsNullOrWhiteSpace(loginForm.UserName)) { loginFormResponse.StatusCode = 400; loginFormResponse.ErrorList = new List <LoginValidationResponse>() { new LoginValidationResponse() { Code = 1001, Message = "UserName can't be blank." } }; return(loginFormResponse); } if (string.IsNullOrWhiteSpace(loginForm.Password)) { loginFormResponse.StatusCode = 400; loginFormResponse.ErrorList = new List <LoginValidationResponse>() { new LoginValidationResponse() { Code = 1001, Message = "Password can't be blank." } }; return(loginFormResponse); } if (!Regex.IsMatch(loginForm.UserName, RegexPattern.mobile_number_validation_Patterns.GetCombinedPattern())) { loginFormResponse.StatusCode = 400; loginFormResponse.ErrorList = new List <LoginValidationResponse>() { new LoginValidationResponse() { Code = 1001, FieldName = nameof(loginForm.UserName), Message = nameof(loginForm.UserName) + " should be valid. Format -: xxxxxxxxxx " } }; return(loginFormResponse); } UserInformation userInformation = _userLayer.GetUserDetail(loginForm); if (userInformation != null) { JwtTokenResponse jwtTokenResponse = GetJWTToken(userInformation); if (jwtTokenResponse.StatusCode == 200) { JwtToken tokenDetail = jwtTokenResponse.TokenDetail; loginFormResponse.StatusCode = 200; loginFormResponse.Response = new LoginResponse(); loginFormResponse.Response.UserId = userInformation.UserId; if (tokenDetail != null) { loginFormResponse.Response.TokenDetail = new Token() { Type = tokenDetail.Type, Value = tokenDetail.Value, CreatedAt = tokenDetail.CreatedAt, ExpiredAt = tokenDetail.ExpiredAt }; } } else { loginFormResponse.StatusCode = 400; loginFormResponse.ErrorList = jwtTokenResponse .ErrorList .Select(x => new LoginValidationResponse() { FieldName = x.FieldName, Message = x.Message, Code = x.Code }).ToList(); } } else { loginFormResponse.StatusCode = 400; loginFormResponse.ErrorList = new List <LoginValidationResponse>() { new LoginValidationResponse() { Code = 1001, Message = "User Not Found" } }; } } catch (Exception ex) { loginFormResponse.StatusCode = 400; loginFormResponse.ErrorList = new List <LoginValidationResponse>() { new LoginValidationResponse() { Code = 1001, Message = "User Authentication Failed" + ex.Message } }; } return(loginFormResponse); }