public void InvalidEntrySpecial(InvalidSpecialCondition inputType) { var defaultUserId = TestContext.CurrentContext.Test.Properties.Get("adminUserId"); var resetUserPassHandler = new ResetUserPasswordManager(); var parameterRequest = new Dictionary <string, object>(Common.ResetUserPasswordParameters); PrivateApiResponse <ResetUserPasswordResponse> response = null; if (inputType == InvalidSpecialCondition.WrongContentType) { response = resetUserPassHandler.ResetUserPassword(parameterRequest, System.Net.Http.HttpMethod.Post, Common.InvalidEntrySpecialTestCasesMapper[InvalidSpecialCondition.WrongContentType].ToString()); } else { string jsonContent = string.Empty; if (inputType == InvalidSpecialCondition.BrokenJsonFormat) { jsonContent = "{\"userId\": \"" + defaultUserId + "\""; } else { jsonContent = Common.InvalidEntrySpecialTestCasesMapper[inputType].ToString(); } response = resetUserPassHandler.ResetUserPassword(jsonContent, System.Net.Http.HttpMethod.Post); } LastPassword = Common.GetResetUserPassword(response); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(inputType == InvalidSpecialCondition.WrongContentType ? System.Net.HttpStatusCode.UnsupportedMediaType : System.Net.HttpStatusCode.BadRequest)); }
public void TestUserIdValid(ValidUserIdTestCases inputType) { var parameterRequest = new Dictionary <string, object>(ResetUserPasswordParameters); parameterRequest.Remove("forcePasswordChange"); PrivateApiResponse <ResetUserPasswordResponse> response = null; if (inputType == ValidUserIdTestCases.AdminRole) { var resetUserPassHandler = new ResetUserPasswordManager(); response = resetUserPassHandler.ResetUserPassword(parameterRequest, HttpMethod.Post); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.OK)); PrAssert.That(response.Result.Password.Count(), PrIs.GreaterThanOrEqualTo(1)); LastPassword = response.Result.Password; } else { Common common = new Common(); var info = AuthenticationInfoProvider.Current.Manager.GetAllAvailableUsers(new UserSpecBuilder().Admin(false)); response = common.LoginAndSendRequestWithOtherAccount <ResetUserPasswordResponse>(info.First().Company.Name, info.First().Login, info.First().Password, "/privateapi/authentication/reset-user-password", parameterRequest); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.OK)); PrAssert.That(response.Result.Password.Count(), PrIs.GreaterThanOrEqualTo(1)); } LastPassword = response.Result.Password; }
private void AssertResetUserPassword(Dictionary <string, object> request) { var resetUserPassHandler = new ResetUserPasswordManager(); var response = resetUserPassHandler.ResetUserPassword(request, HttpMethod.Post); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.OK)); PrAssert.That(response.Result.Password.Count(), PrIs.GreaterThanOrEqualTo(1)); }
public void TestResetUserPasswordInvalid(Fields field, InvalidTestCases inputType) { var parameterRequest = GetParameters(inputType, field); var resetUserPassHandler = new ResetUserPasswordManager(); var response = resetUserPassHandler.ResetUserPassword(parameterRequest, System.Net.Http.HttpMethod.Post); LastPassword = Common.GetResetUserPassword(response); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest)); }
public void ResetUserPasswordInjection(Fields field, InjectionInput inputType) { var parameterRequest = new Dictionary <string, object>(Common.ResetUserPasswordParameters); parameterRequest[Char.ToLowerInvariant(field.ToString()[0]) + field.ToString().Substring(1)] = InjectionInputData.InjectionInputMapper[inputType]; var resetUserPassHandler = new ResetUserPasswordManager(); var response = resetUserPassHandler.ResetUserPassword(parameterRequest, System.Net.Http.HttpMethod.Post); LastPassword = Common.GetResetUserPassword(response); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest)); }
public void ResetPasswordByOtherHttpMethod(HttpMethod inputType) { var parameterRequest = new Dictionary <string, object>(Common.ResetUserPasswordParameters); var httpMethod = new Dictionary <HttpMethod, System.Net.Http.HttpMethod>() { [HttpMethod.GET] = System.Net.Http.HttpMethod.Get, [HttpMethod.DELETE] = System.Net.Http.HttpMethod.Delete, [HttpMethod.PUT] = System.Net.Http.HttpMethod.Put, }; var resetUserPassHandler = new ResetUserPasswordManager(); var response = resetUserPassHandler.ResetUserPassword(parameterRequest, httpMethod[inputType]); LastPassword = Common.GetResetUserPassword(response); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest)); }
public void TestVerifyResetUserPasswordAfterExpiredTime() { var parameterRequest = new Dictionary <string, object>(Common.ResetUserPasswordParameters); var resetUserPassHandler = new ResetUserPasswordManager(); var response = resetUserPassHandler.ResetUserPassword(parameterRequest, System.Net.Http.HttpMethod.Post); LastPassword = Common.GetResetUserPassword(response); //Verify Thread.Sleep(60000 * 2); //sleep in 2 mins var connection = new PrivateApiConnection(); connection.Authenticate( TestContext.CurrentContext.Test.Properties.Get("companyName").ToString(), TestContext.CurrentContext.Test.Properties.Get("adminUserLogin").ToString(), TestContext.CurrentContext.Test.Properties.Get("adminUserPassword").ToString()); PrAssert.That(connection.IsAuthenticated, PrIs.True); }
public void DuplicateParameters(Fields field, Values value) { var defaultUserId = TestContext.CurrentContext.Test.Properties.Get("adminUserId"); var ParametersSameValue = new Dictionary <Fields, object> { [Fields.UserId] = "{\"userId\": \"" + defaultUserId + "\", \"userId\": \"" + defaultUserId + "\"}", [Fields.ForcePasswordChange] = "{\"userId\": \"" + defaultUserId + "\", \"forcePasswordChange\": true, \"forcePasswordChange\": true}" }; var ParametersNotSameValue = new Dictionary <Fields, object> { [Fields.UserId] = "{\"userId\": \"" + defaultUserId + "\", \"userId\": \"11115887\"}", [Fields.ForcePasswordChange] = "{\"userId\": \"" + defaultUserId + "\", \"forcePasswordChange\": true, \"forcePasswordChange\": false}" }; var resetUserPassHandler = new ResetUserPasswordManager(); var response = resetUserPassHandler.ResetUserPassword(value == Values.Same ? ParametersSameValue[field] : ParametersNotSameValue[field], System.Net.Http.HttpMethod.Post); LastPassword = Common.GetResetUserPassword(response); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest)); }