public void DuplicateParameters(Fields field, Values value) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var defaultPassword = creds.Users.Values.Single().Password; string NewPasswordNotSame = NewPassword + "123"; var parametersSameValue = new Dictionary <Fields, string> { [Fields.OldPassword] = "{\"newPassword\": \"" + NewPassword + "\", \"oldPassword\": \"" + defaultPassword + "\", \"oldPassword\": \"" + defaultPassword + "\", \"checkOldPasswords\":5}", [Fields.NewPassword] = "{\"newPassword\": \"" + NewPassword + "\", {\"newPassword\": \"" + NewPassword + "\", \"oldPassword\": \"" + defaultPassword + "\", \"checkOldPasswords\":5}", [Fields.CheckOldPasswords] = "{\"newPassword\": \"" + NewPassword + "\", \"oldPassword\": \"" + defaultPassword + "\", \"checkOldPasswords\":5, \"checkOldPasswords\":5}", }; var parametersNotSameValue = new Dictionary <Fields, string> { [Fields.OldPassword] = "{\"newPassword\": \"" + NewPassword + "\", \"oldPassword\": \"" + defaultPassword + "\", \"oldPassword\": \"" + defaultPassword + "NotSame" + "\", \"checkOldPasswords\":5}", [Fields.NewPassword] = "{\"newPassword\": \"" + NewPassword + "\", {\"newPassword\": \"" + NewPasswordNotSame + "\", \"oldPassword\": \"" + defaultPassword + "\", \"checkOldPasswords\":5}", [Fields.CheckOldPasswords] = "{\"newPassword\": \"" + NewPassword + "\", \"oldPassword\": \"" + defaultPassword + "\", \"checkOldPasswords\":5, \"checkOldPasswords\":6}" }; var updatePassHandler = new UpdatePasswordManager(); var response = updatePassHandler.UpdatePassword(value == Values.Same ? parametersSameValue[field] : parametersNotSameValue[field], System.Net.Http.HttpMethod.Put); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest)); }
public void DuplicateParametersTest(Fields field, Values value) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var readSessionHandler = new HrbcCoreManager(); var firstSessionId = readSessionHandler.GetDefaultSessionId(_testConnection); var secondSessionId = readSessionHandler.GetDefaultSessionId(_testConnection); var parametersSameValue = new Dictionary <Fields, string> { [Fields.CompanyId] = $"companyId={CompanyId}&companyId={CompanyId}&userId={adminUserId}&sessionId={firstSessionId}", [Fields.UserId] = $"companyId={CompanyId}&userId={adminUserId}&userId={adminUserId}&sessionId={firstSessionId}", [Fields.SessionId] = $"companyId={CompanyId}&userId={adminUserId}&sessionId={firstSessionId}&sessionId={firstSessionId}" }; var parametersNotSameValue = new Dictionary <Fields, string> { [Fields.CompanyId] = $"companyId={CompanyId}&companyId={SecondCompanyId}&userId={adminUserId}&sessionId={firstSessionId}", [Fields.UserId] = $"companyId={CompanyId}&userId={NormalUserId}&userId={adminUserId}&sessionId={firstSessionId}", [Fields.SessionId] = $"companyId={CompanyId}&userId={adminUserId}&sessionId={firstSessionId}&sessionId={secondSessionId}" }; creds.Dispose(); var response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, value == Values.Same ? parametersSameValue[field] : parametersNotSameValue[field]); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(HttpStatusCode.BadRequest)); }
public void InvalidEntrySpecial(InvalidSpecialCondition inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var defaultPassword = creds.Users.Values.Single().Password.ToString(); var updatePassHandler = new UpdatePasswordManager(); var parameterRequest = new Dictionary <string, object>(Common.UpdatePasswordParameters); PrivateApiResponse <object> response = null; if (inputType == InvalidSpecialCondition.WrongContentType) { response = updatePassHandler.UpdatePassword(parameterRequest, System.Net.Http.HttpMethod.Put, InvalidEntrySpecialTestCasesMapper[InvalidSpecialCondition.WrongContentType].ToString()); } else { string jsonContent = string.Empty; if (inputType == InvalidSpecialCondition.BrokenJsonFormat) { jsonContent = string.Format(InvalidEntrySpecialTestCasesMapper[InvalidSpecialCondition.BrokenJsonFormat].ToString(), defaultPassword); } else { jsonContent = InvalidEntrySpecialTestCasesMapper[inputType].ToString(); } response = updatePassHandler.UpdatePassword(jsonContent, System.Net.Http.HttpMethod.Put); } LastPassword = Common.CheckUpdatedPassword(response) ? NewPassword : string.Empty; PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest)); }
public void InjectionTest(Fields field, InjectionInput inputType) { var headerValue = string.Empty; var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserPassword = creds.Companies.First().Value.Users.First().Password; var adminUserLogin = creds.Companies.First().Value.Users.First().Login; var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var companyId = creds.Companies.First().Value.Id; var companyName = creds.Companies.First().Value.Name; creds.Dispose(); if (Fields.CID == field) { headerValue = GetFormatIdentityHeader(InjectionInputData.InjectionInputMapper[inputType], adminUserId, DefaultService); } else if (Fields.UID == field) { headerValue = GetFormatIdentityHeader(companyId, InjectionInputData.InjectionInputMapper[inputType], DefaultService); } else { headerValue = GetFormatIdentityHeader(companyId, adminUserId, InjectionInputData.InjectionInputMapper[inputType]); } var internalHandler = new InternalApiManager(InitPrivateApiConnection(companyName, adminUserLogin, adminUserPassword)); var response = internalHandler.SendRequestWithIdentityHeader(InternalAuthRequest, "X-IDENTITY", headerValue, HttpMethod.Post); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.Unauthorized)); }
public void UpdatePassOverCheckOldPasswordNumber() { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var defaultUserName = creds.Companies.First().Value.Users.First().Login; var defaultPassword = creds.Companies.First().Value.Users.First().Password; int checkOldPasswords = 5; List <string> arrPassword = new List <string>(); //Update a list of passwords for (var i = 0; i < checkOldPasswords + 3; i++) { arrPassword.Add(TestContext.CurrentContext.Random.GetString(8, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")); Common.UpdateNewPassword(arrPassword[i], LastPassword == string.Empty ? defaultPassword : LastPassword); LastPassword = arrPassword[i]; } //Update password var updatePassRequest = new Dictionary <string, object>(Common.UpdatePasswordParameters); updatePassRequest["oldPassword"] = LastPassword; updatePassRequest["newPassword"] = arrPassword[checkOldPasswords + 1]; updatePassRequest["checkOldPasswords"] = checkOldPasswords; var updatePassHandler = new UpdatePasswordManager(); var response = updatePassHandler.UpdatePassword(updatePassRequest, HttpMethod.Put); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.NoContent)); }
public void CheckOldPasswordValid(ValidCheckOldPasswordTestCases inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var defaultUserName = creds.Companies.First().Value.Users.First().Login; var defaultPassword = creds.Companies.First().Value.Users.First().Password; var defaultCompanyLoginId = creds.Companies.First().Value.Name; string token = Common.RefreshToken(defaultCompanyLoginId, defaultUserName); int checkOldPasswords = int.Parse(CheckOldPasswordMappingValues[inputType].ToString()); for (int i = 0; i < checkOldPasswords + 1; i++) { Common.UpdateNewPassword(Passwords[i], LastPassword == string.Empty ? defaultPassword : LastPassword); LastPassword = Passwords[i]; } //Update password var updatePassRequest = new Dictionary <string, object>(Common.UpdatePasswordParameters); updatePassRequest["oldPassword"] = LastPassword; updatePassRequest["newPassword"] = Passwords[checkOldPasswords]; updatePassRequest["checkOldPasswords"] = checkOldPasswords; var updatePassHandler = new UpdatePasswordManager(); var response = updatePassHandler.UpdatePassword(updatePassRequest, HttpMethod.Put); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.Conflict)); }
public void UrlParamCompanyIdLoginTest(string parameterName, InputType inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var parameters = ValidationTestData.UrlParameterInputToTransformationMap[inputType](new Dictionary <string, string> { ["companyId"] = creds.Companies.Single().Value.Partition }, parameterName); using (var response = _testConnection.SendAsync(CommonConstants.LoginUrl, parameters, System.Net.Http.HttpMethod.Get).Result) { VerifyInvalidUrlResponse(parameterName, inputType, response); } }
private SettingSetRequest GenerateSettingUpdateRequest() { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); return(new SettingSetRequest { AllowedRolePwdLogin = 2, SsoEnabled = true, ComnanyId = Convert.ToInt32(creds.Companies.Single().Value.Partition), LoginUrl = "http://test.com" }); }
private static string GetDuplicatedToken() { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); using (var connection = new AuthApiConnection()) { System.Threading.Thread.Sleep(2000); connection.Authenticate(creds.Companies.Single().Value.Name, creds.Users.Single().Value.Login, creds.Users.Single().Value.Password); return AuthApiConnection.GetConnectionForCurrentTest().GetCookieValue("HRBCAUTH"); } }
public void UpdatePasswordInjection(Fields field, InjectionInput inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var defaultPassword = creds.Users.Values.Single().Password.ToString(); var parameterRequest = new Dictionary <string, object>(Common.UpdatePasswordParameters); parameterRequest["oldPassword"] = defaultPassword; parameterRequest[Char.ToLowerInvariant(field.ToString()[0]) + field.ToString().Substring(1)] = InjectionInputData.InjectionInputMapper[inputType]; var updatePassHandler = new UpdatePasswordManager(); var response = updatePassHandler.UpdatePassword(parameterRequest, System.Net.Http.HttpMethod.Put); LastPassword = Common.CheckUpdatedPassword(response) ? InjectionInputData.InjectionInputMapper[inputType].ToString() : string.Empty; PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest)); }
public void UpdatePasswordValid(ValidNewPasswordTestCases inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var defaultPassword = creds.Companies.First().Value.Users.First().Password; var updatePassRequest = new Dictionary <string, object>(Common.UpdatePasswordParameters); updatePassRequest["newPassword"] = NewPasswordMappingValues[inputType]; updatePassRequest["oldPassword"] = defaultPassword; var updatePassHandler = new UpdatePasswordManager(); var response = updatePassHandler.UpdatePassword(updatePassRequest, HttpMethod.Put); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.NoContent)); LastPassword = NewPasswordMappingValues[inputType].ToString(); }
private Dictionary <string, object> GetParameters(InvalidPasswordTestCases inputType, Fields field) { var parameterRequest = new Dictionary <string, object>(Common.UpdatePasswordParameters); var fieldName = Char.ToLowerInvariant(field.ToString()[0]) + field.ToString().Substring(1); var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var defaultPassword = creds.Users.Values.Single().Password.ToString(); parameterRequest["oldPassword"] = defaultPassword; parameterRequest[fieldName] = PasswordMappingValues[inputType]; switch (inputType) { case InvalidPasswordTestCases.Array: parameterRequest[fieldName] = new List <int>() { 123, 456, 789 }; break; case InvalidPasswordTestCases.CurrentPassword: parameterRequest[fieldName] = defaultPassword; break; case InvalidPasswordTestCases.PreviousPassword: Common.UpdateNewPassword(NewPassword, defaultPassword); parameterRequest[fieldName] = defaultPassword; break; case InvalidPasswordTestCases.Missing: parameterRequest.Remove(fieldName); break; case InvalidPasswordTestCases.NoneExistField: if (field != Fields.CheckOldPasswords) { parameterRequest["oldPassword"] = defaultPassword; parameterRequest["newPassword"] = NewPassword; } else { parameterRequest["checkOldPasswords"] = 5; } parameterRequest["my" + field.ToString()] = "23"; break; } return(parameterRequest); }
public void ReadHrbcCoreSessionByOtherHttpMethod(HttpMethod inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var readSessionHandler = new HrbcCoreManager(); var request = new Dictionary <string, string>() { ["companyId"] = CompanyId, ["userId"] = adminUserId, ["sessionId"] = readSessionHandler.GetDefaultSessionId(_testConnection), }; creds.Dispose(); var response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, request, inputType.ToNetHttpMethod()); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(HttpStatusCode.BadRequest)); }
public void ReadHrbcCoreTmpCompanyInfoAccessEndpointTest(AccessState accessState, HttpStatusCode httpStatusCode, ResultCode resultCode) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var companyId = creds.Companies.First().Value.Id; var readSessionHandler = new HrbcCoreManager(); var accessEndpointHandler = new AccessEndpointManager(); var request = new Dictionary <string, string>() { ["fullMode"] = "true", }; creds.Dispose(); var response = accessEndpointHandler.AccessEndpoint <HrbcCoreSessionResponse>(accessState, $"{HrbcCoreManager.GetTmpCompanyInfoEndpoint}/{companyId}", request, System.Net.Http.HttpMethod.Get); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(httpStatusCode), "Still able to access entry api."); }
public void RequestContainsIdentityAndCookieHeadersTest() { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserPassword = creds.Companies.First().Value.Users.First().Password; var adminUserLogin = creds.Companies.First().Value.Users.First().Login; var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var companyId = creds.Companies.First().Value.Id; var companyName = creds.Companies.First().Value.Name; creds.Dispose(); var headerValue = GetFormatIdentityHeader(companyId, adminUserId, DefaultService); var internalHandler = new InternalApiManager(InitPrivateApiConnection(companyName, adminUserLogin, adminUserPassword)); var response = internalHandler.SendRequestWithIdentityHeaderAndCookie(InternalAuthRequest, "X-IDENTITY", headerValue, HttpMethod.Post); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.Unauthorized)); }
public void InternalValidTest(ValidTestCases inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserPassword = creds.Companies.First().Value.Users.First().Password; var adminUserLogin = creds.Companies.First().Value.Users.First().Login; var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"]; var companyId = creds.Companies.First().Value.Id; var companyName = creds.Companies.First().Value.Name; creds.Dispose(); var headerValue = inputType == ValidTestCases.ChangeOrderXidentityHeader ? $"SERVICE={DefaultService};CID={companyId};UID={adminUserId}" : $"CID={companyId};UID={adminUserId};SERVICE={ValidMapperValues[inputType]}"; var internalHandler = new InternalApiManager(InitPrivateApiConnection(companyName, adminUserLogin, adminUserPassword)); var response = internalHandler.SendRequestWithIdentityHeader(InternalAuthRequest, "X-IDENTITY", headerValue, HttpMethod.Post); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.OK)); }
public void InternalInvalidTest(InvalidTestCases inputType, Fields field) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserPassword = creds.Companies.First().Value.Users.First().Password; var adminUserLogin = creds.Companies.First().Value.Users.First().Login; var companyName = creds.Companies.First().Value.Name; var userInfo = new Dictionary <string, object> { ["companyId"] = creds.Companies.First().Value.Id, ["adminUserId"] = creds.Companies.First().Value.Users.First().Metadata["userId"] }; creds.Dispose(); var headerValue = GetParametersForIdentityHeader(inputType, field, userInfo); var internalHandler = new InternalApiManager(InitPrivateApiConnection(companyName, adminUserLogin, adminUserPassword)); var response = internalHandler.SendRequestWithIdentityHeader(InternalAuthRequest, "X-IDENTITY", headerValue, HttpMethod.Post); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.Unauthorized)); }
public void InternalSpecialCommonTest(InvalidSpecialCommonTestCases inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserPassword = creds.Companies.First().Value.Users.First().Password; var adminUserLogin = creds.Companies.First().Value.Users.First().Login; var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var companyId = creds.Companies.First().Value.Id; var companyName = creds.Companies.First().Value.Name; creds.Dispose(); var headerName = inputType == InvalidSpecialCommonTestCases.XIdentityIsLowecase ? "x-identity" : "X-IDENTITY"; var headerValue = inputType == InvalidSpecialCommonTestCases.LoginAdminUserAndUidAsNormalUser ? GetFormatIdentityHeader(companyId, NormalUserId, DefaultService) : GetFormatIdentityHeader(SecondCompanyId, SecondAdminUserId, DefaultService); var internalHandler = new InternalApiManager(InitPrivateApiConnection(companyName, adminUserLogin, adminUserPassword)); var response = internalHandler.SendRequestWithIdentityHeader(InternalAuthRequest, headerName, headerValue, HttpMethod.Post); PrAssert.That(response, inputType == InvalidSpecialCommonTestCases.XIdentityIsLowecase ? PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.OK) : PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.Unauthorized)); }
public void ReadHrbcCoreSessionValidTest() { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var readSessionHandler = new HrbcCoreManager(); var request = new Dictionary <string, string>() { ["companyId"] = CompanyId, ["userId"] = adminUserId, ["sessionId"] = readSessionHandler.GetDefaultSessionId(_testConnection), }; creds.Dispose(); var response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get, null); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(HttpStatusCode.OK)); PrAssert.That(response.Result.Status, PrIs.EqualTo("OK")); }
public void UpdatePasswordByOtherHttpMethod(HttpMethod inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var defaultPassword = creds.Users.Values.Single().Password.ToString(); var parameterRequest = new Dictionary <string, object>(Common.UpdatePasswordParameters); parameterRequest["oldPassword"] = defaultPassword; var httpMethod = new Dictionary <HttpMethod, System.Net.Http.HttpMethod>() { [HttpMethod.GET] = System.Net.Http.HttpMethod.Get, [HttpMethod.DELETE] = System.Net.Http.HttpMethod.Delete, [HttpMethod.POST] = System.Net.Http.HttpMethod.Post, }; var updatePassHandler = new UpdatePasswordManager(); var response = updatePassHandler.UpdatePassword(parameterRequest, httpMethod[inputType]); LastPassword = Common.CheckUpdatedPassword(response) ? NewPassword : string.Empty; PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest)); }
public void ReadHrbcCoreSessionInvalidSpecialTest(InvalidSpecialTestCases inputType) { ApiResponse <HrbcCoreSessionResponse> response = null; var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var adminLogin = creds.Companies.First().Value.Users.First().Login; var adminPassword = creds.Companies.First().Value.Users.First().Password; var readSessionHandler = new HrbcCoreManager(); var request = new Dictionary <string, string>() { ["companyId"] = CompanyId, ["userId"] = adminUserId, ["sessionId"] = readSessionHandler.GetDefaultSessionId(_testConnection), }; creds.Dispose(); switch (inputType) { case InvalidSpecialTestCases.ExpiredSessionId: Thread.Sleep(10800 * 1000); //Sleep in 10800 seconds response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get); break; case InvalidSpecialTestCases.NoDataInRequest: response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, System.Net.Http.HttpMethod.Get); break; case InvalidSpecialTestCases.LoginNormalUserSendRequestAdminUserId: response = readSessionHandler.LoginAndSendRequestWithOtherAccount <HrbcCoreSessionResponse>(CompanyName, NormalUserLogin, NormalUserPassword, HrbcCoreManager.GetSessionEndpoint, request); break; case InvalidSpecialTestCases.LoginAdminUserSendRequestOtherCompany: var userInfo = GetAllAvailableUsers(OtherCompanyId); request["companyId"] = OtherCompanyId; request["userId"] = userInfo.Company.Users.First().Metadata["userId"].ToString(); userInfo.Dispose(); response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get); break; } PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(HttpStatusCode.BadRequest)); }
public void ReadHrbcCoreSessionInjection(Fields field, InjectionInput inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var fieldName = Char.ToLowerInvariant(field.ToString()[0]) + field.ToString().Substring(1); var readSessionHandler = new HrbcCoreManager(); var request = new Dictionary <string, string>() { ["companyId"] = CompanyId, ["userId"] = adminUserId, ["sessionId"] = readSessionHandler.GetDefaultSessionId(_testConnection), }; creds.Dispose(); request[fieldName] = InjectionInputData.InjectionInputMapper[inputType]; var response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get, null); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(HttpStatusCode.BadRequest)); }
public void ReadHrbcCoreSessionAccessEndpointTest(AccessState accessState, HttpStatusCode httpStatusCode, ResultCode resultCode) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var companyId = creds.Companies.First().Value.Id; var readSessionHandler = new HrbcCoreManager(); var accessEndpointHandler = new AccessEndpointManager(); var request = new Dictionary <string, string>() { ["companyId"] = companyId, ["userId"] = adminUserId, ["sessionId"] = readSessionHandler.GetDefaultSessionId(), }; creds.Dispose(); var response = accessEndpointHandler.AccessEndpoint <HrbcCoreSessionResponse>(accessState, HrbcCoreManager.GetSessionEndpoint, request, System.Net.Http.HttpMethod.Get); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(httpStatusCode), "Still able to access entry api."); }
public void ReadHrbcCoreSessionByLoginValidTest(ValidTestCases inputType) { ApiResponse <HrbcCoreSessionResponse> response = null; var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var adminLogin = creds.Companies.First().Value.Users.First().Login; var adminPassword = creds.Companies.First().Value.Users.First().Password; var readSessionHandler = new HrbcCoreManager(); var requestDefault = new Dictionary <string, string>() { ["companyId"] = CompanyId, ["userId"] = NormalUserId, ["sessionId"] = readSessionHandler.GetDefaultSessionId(_testConnection), }; if (ValidTestCases.LoginNormalUserSendRequestNormalUserId == inputType) { var request = new Dictionary <string, string>(requestDefault); response = readSessionHandler.LoginAndSendRequestWithOtherAccount <HrbcCoreSessionResponse>(CompanyName, NormalUserLogin, NormalUserPassword, HrbcCoreManager.GetSessionEndpoint, request); readSessionHandler.ReAuthenticate(CompanyName, adminLogin, adminPassword); } else { Dictionary <string, string> request = new Dictionary <string, string>(); if (ValidTestCases.LoginAdminUserSendRequestNormalUserId == inputType) { request = requestDefault; } else { request = new Dictionary <string, string>(requestDefault); request["userId"] = adminUserId; } response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get); } creds.Dispose(); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(HttpStatusCode.OK)); PrAssert.That(response.Result.Status, PrIs.EqualTo("OK")); }
public void ReadHrbcCoreTmpCompanyInfoValidTest(UserType userType, ValidTestCases inputType) { ApiResponse <HrbcCoreTmpCompanyInfoResponse> response = null; var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var companyName = creds.Companies.First().Value.Metadata["companyName"].ToString(); var companyLoginId = creds.Companies.First().Value.Name; var adminLogin = creds.Companies.First().Value.Users.First().Login; var adminPassword = creds.Companies.First().Value.Users.First().Password; var dbInfoHost = creds.Companies.First().Value.Metadata["dbInfoHost"].ToString(); var dbInfoPort = creds.Companies.First().Value.Metadata["dbInfoPort"].ToString(); var dbInfoUserName = creds.Companies.First().Value.Metadata["dbInfoUserName"].ToString(); var dbInfoPassword = creds.Companies.First().Value.Metadata["dbInfoPassword"].ToString(); var companyInfoHandler = new HrbcCoreManager(); var requestDefault = new Dictionary <string, string>() { ["companyId"] = CompanyId }; if (inputType != ValidTestCases.Default) { requestDefault["fullMode"] = ValidMapperValues[inputType].ToString().ToLower(); } if (UserType.User == userType) { var request = new Dictionary <string, string>(requestDefault); response = companyInfoHandler.LoginAndSendRequestWithOtherAccount <HrbcCoreTmpCompanyInfoResponse>(CompanyName, NormalUserLogin, NormalUserPassword, HrbcCoreManager.GetTmpCompanyInfoEndpoint, request); companyInfoHandler.ReAuthenticate(CompanyName, adminLogin, adminPassword); } else { response = companyInfoHandler.SendHrbcCoreTmpCompanyInfo <HrbcCoreTmpCompanyInfoResponse>(_testConnection, requestDefault, System.Net.Http.HttpMethod.Get); } creds.Dispose(); PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(HttpStatusCode.OK)); //Verify data VerifyData(response, inputType, new CompanyInfo(CompanyId, companyName, companyLoginId, $"PRC{CompanyId}", dbInfoHost, dbInfoPort, dbInfoUserName, dbInfoPassword)); }
public void IdentityHeaderJsonWebTokenTest() { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminUserPassword = creds.Companies.First().Value.Users.First().Password; var adminUserLogin = creds.Companies.First().Value.Users.First().Login; var adminUserId = creds.Companies.First().Value.Users.First().Metadata["userId"].ToString(); var companyId = creds.Companies.First().Value.Id; var companyName = creds.Companies.First().Value.Name; creds.Dispose(); var headerValue = new Dictionary <string, object> { ["CID"] = companyId, ["UID"] = adminUserId, ["SERVICE"] = DefaultService, }; var internalHandler = new InternalApiManager(InitPrivateApiConnection(companyName, adminUserLogin, adminUserPassword)); var response = internalHandler.SendRequestWithIdentityHeaderConvertJwt <object>(InternalAuthRequest, headerValue, HttpMethod.Post); PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.Unauthorized)); }
public void TestOriginalSearchItemRegistration(ResourceId resource, Users user) { string companyName = string.Empty; string userLogin = string.Empty; string userPassword = string.Empty; if (user == Users.DefaultUser) { var adminUserInfo = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); companyName = adminUserInfo.Companies.First().Value.Users.First().Company.Name; userLogin = adminUserInfo.Companies.First().Value.Users.First().Login; userPassword = adminUserInfo.Companies.First().Value.Users.First().Password; adminUserInfo.Dispose(); } else { var normalUserInfo = OriginalSearchHelpers.GetAllAvailableUsers(false); companyName = normalUserInfo.First().Company.Name; userLogin = normalUserInfo.First().Login; userPassword = normalUserInfo.First().Password; normalUserInfo.First().Dispose(); } AssertResponsedContent(resource, user, companyName, userLogin, userPassword); }
private void VerifyData(ApiResponse <HrbcCoreTmpCompanyInfoResponse> response, ValidTestCases inputType, CompanyInfo companyInfo) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); var adminName = creds.Companies.First().Value.Users.First().Metadata["name"].ToString(); creds.Dispose(); if (inputType == ValidTestCases.Default || inputType == ValidTestCases.False) { PrAssert.That(response.Result.Name, PrIs.Null); } else { PrAssert.That(response.Result.Name, PrIs.EqualTo(companyInfo.Name)); } PrAssert.That(response.Result.CompanyLoginId, PrIs.EqualTo(companyInfo.CompanyLoginId)); PrAssert.That(response.Result.CatalogName, PrIs.EqualTo(companyInfo.CatalogName)); PrAssert.That(response.Result.DbInfoHost, PrIs.EqualTo(companyInfo.DbInfoHost)); PrAssert.That(response.Result.DbInfoPort, PrIs.EqualTo(companyInfo.DbInfoPort)); PrAssert.That(response.Result.DbInfoUserName, PrIs.EqualTo(companyInfo.DbInfoUserName)); PrAssert.That(response.Result.DbInfoPassword, PrIs.EqualTo(companyInfo.DbInfoPassword)); PrAssert.That(response.Result.Id, PrIs.EqualTo(companyInfo.Id)); }
public void CoreSettingUpdateTest(string propertyName, ParameterType parameterType, InputType inputType) { var creds = AuthenticationInfoProvider.GetAuthSpecForCurrentTest(); ValidationTestUtility.PerformJsonValidationTest(_testConnection, propertyName, parameterType, inputType, GenerateSettingUpdateRequest(), creds); }
public void GetTokenThenCheckDefaultUserIdTest() { var expectedUserId = Convert.ToInt32(AuthenticationInfoProvider.GetAuthSpecForCurrentTest().Users.Single().Value.Metadata["userId"]); PrAssert.That(GetWebToken().ParsedPayload.Payload.UserId, PrIs.EqualTo(expectedUserId)); }