public void TestInvalidOriginalSearchMenuConditions(Parameters parameter, InvalidTestCases inputType)
        {
            var handler = new OriginalSearchManager();
            var request = GetOriginalSearchConditionsParameters(ResourceId.Client);

            if (inputType == InvalidTestCases.Missing)
            {
                request.Remove(parameter.ToString().ToLower());
            }
            else
            {
                request[parameter.ToString().ToLower()] = InvalidMaps[inputType].ToString();
            }

            if (Parameters.Limit == parameter && (inputType == InvalidTestCases.NoneExistedId || inputType == InvalidTestCases.BigInterger))
            {
                var response = handler.OriginalSearch <List <ConditionsDataResponse> >(GetOriginalSearchConditionsParameters(ResourceId.Client), System.Net.Http.HttpMethod.Get);
                PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.OK));
                PrAssert.That(response.Result.Count, PrIs.GreaterThan(0));
            }
            else
            {
                var response = handler.OriginalSearch <object>(request, System.Net.Http.HttpMethod.Get);
                PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
            }
        }
示例#2
0
        public void MergeInvalid(ResourceId resourceId, InvalidTestCases inputType, Parameters parameter)
        {
            var mergeRequest = GetParameters(resourceId, inputType, parameter);
            var mergeHandler = new MergeManager();
            var response     = mergeHandler.MergeRecords <MergeResponse>(resourceId, mergeRequest, System.Net.Http.HttpMethod.Post);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
        }
        public void TestResetPasswordInvalid(Fields field, InvalidTestCases inputType)
        {
            var parameterRequest = GetParameters(inputType, field);
            var resetPassHandler = new ResetPasswordManager();
            var response         = resetPassHandler.ResetPassword(parameterRequest, System.Net.Http.HttpMethod.Post);

            LastPassword = Common.CheckUpdatedPassword(response) ? parameterRequest["newPassword"].ToString() : string.Empty;
            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
        }
示例#4
0
        public void InvalidApplicationInfoTests(InvalidTestCases testcase)
        {
            var hrbcAppHandler = new ApplicationManager();
            var request        = new Dictionary <string, string>();

            InvalidMapperValues[testcase](request);

            var response = hrbcAppHandler.ReadHrbcApplicationInfo <HrbcApplicationInfoResponse>(request);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
        }
示例#5
0
        public void TestInvalidTopDashboard(Parameters parameter, InvalidTestCases inputType)
        {
            var handler = new DashboardManager();
            var request = new Dictionary <string, string>()
            {
                [parameter.ToString().ToLower()] = InvalidMaps[inputType].ToString()
            };
            var response = handler.SendTopDashboard <TopDashboardDataResponse>(request, System.Net.Http.HttpMethod.Get);

            PrAssert.That(response, PrIs.SuccessfulResponse());
            PrAssert.That(response.Result.Data.Type, PrIs.Not.Null.And.Not.Empty.And.Contains(DashboardHelpers.Types.History.ToString().ToLower()));
        }
        public void TestOptionSearchInvalid(Parameters parameter, InvalidTestCases inputType)
        {
            var request = GetOptionSearchParameters(InvalidOptionMap[inputType](parameter).ToString());

            if (parameter == Parameters.W)
            {
                request["w"] = InvalidOptionMap[inputType](parameter).ToString();
            }
            var optionSearchHandler = new OptionSearchManager();
            var response            = optionSearchHandler.OptionSearch <OptionSearchAliasResponse>(inputType == InvalidTestCases.Missing ? InvalidOptionMap[inputType](parameter) : request, System.Net.Http.HttpMethod.Post);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
        }
示例#7
0
        private Dictionary <string, object> GetParameters(InvalidTestCases inputType, Fields field)
        {
            var defaultUserId    = TestContext.CurrentContext.Test.Properties.Get("adminUserId");
            var parameterRequest = new Dictionary <string, object>(Common.ResetUserPasswordParameters);
            var fieldName        = Char.ToLowerInvariant(field.ToString()[0]) + field.ToString().Substring(1);

            parameterRequest[fieldName] = InvalidMappingValues[inputType];

            switch (inputType)
            {
            case InvalidTestCases.Array:
                object val = new object();
                if (field == Fields.UserId)
                {
                    val = new List <int>()
                    {
                        123, 456, 789
                    };
                }
                else
                {
                    val = new List <bool>()
                    {
                        true, false, true
                    };
                }
                parameterRequest[fieldName] = val;
                break;

            case InvalidTestCases.Missing:
                parameterRequest.Remove(fieldName);
                break;

            case InvalidTestCases.NoneExistField:
                parameterRequest["my" + field.ToString()] = "1421";
                break;

            case InvalidTestCases.Reverse:
                parameterRequest[field == Fields.UserId ? "1" : "true"] = fieldName;
                break;

            case InvalidTestCases.WrongKey:
                parameterRequest[field.ToString()] = field == Fields.UserId ? "1" : "false";
                break;

            case InvalidTestCases.UserIdFromOtherCompany:
                parameterRequest[fieldName] = defaultUserId;
                break;
            }
            return(parameterRequest);
        }
示例#8
0
        private string GetParametersForIdentityHeader(InvalidTestCases inputType, Fields field, Dictionary <string, object> userInfo)
        {
            switch (inputType)
            {
            case InvalidTestCases.Missing:
                if (Fields.CID == field)
                {
                    return($"UID={userInfo["adminUserId"]};SERVICE={DefaultService}");
                }
                else if (Fields.UID == field)
                {
                    return($"CID={userInfo["companyId"]};SERVICE={DefaultService}");
                }
                else
                {
                    return($"CID={userInfo["companyId"]};UID={userInfo["adminUserId"]}");
                }

            case InvalidTestCases.Lowercase:
                if (Fields.CID == field)
                {
                    return($"cid={userInfo["companyId"]};UID={userInfo["adminUserId"]};SERVICE={DefaultService}");
                }
                else if (Fields.UID == field)
                {
                    return($"CID={userInfo["companyId"]};uid={userInfo["adminUserId"]};SERVICE={DefaultService}");
                }
                else
                {
                    return($"CID={userInfo["companyId"]};UID={userInfo["adminUserId"]};service={DefaultService}");
                }

            default:
                if (Fields.CID == field)
                {
                    return(GetFormatIdentityHeader(InvalidMapperValues[inputType].ToString(), userInfo["adminUserId"].ToString(), DefaultService));
                }
                else if (Fields.UID == field)
                {
                    return(GetFormatIdentityHeader(userInfo["companyId"].ToString(), InvalidMapperValues[inputType].ToString(), DefaultService));
                }
                else
                {
                    return(GetFormatIdentityHeader(userInfo["companyId"].ToString(), userInfo["adminUserId"].ToString(), InvalidMapperValues[inputType].ToString()));
                }
            }
        }
        public void TestInvalidOriginalSearchDialogConditions(Parameters parameter, InvalidTestCases inputType)
        {
            var handler = new OriginalSearchManager(ConditionEndpoint);
            var request = GetOriginalSearchConditionParameters(ResourceId.Job, firstExpectedId);

            if (inputType == InvalidTestCases.Missing)
            {
                request.Remove(parameter.ToString().ToLower());
            }
            else
            {
                request[parameter.ToString().ToLower()] = InvalidMaps[inputType].ToString();
            }
            var response = handler.OriginalSearch <object>(request, System.Net.Http.HttpMethod.Get);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
        }
        public void TestBulkUpdateGenarateInvalid(Parameters parameter, InvalidTestCases inputType, System.Net.HttpStatusCode resultCode)
        {
            var handler = new BulkUpdateManager();
            var request = DefaultBulkUpdateParameters(RecordTypes.Single, Filters.Replace, HRBCClientPrivate.Common.ResourceId.Client, "P_Name", "Test Name", RecordsCreator);

            request = GetRequestForBulkUpdate(request, parameter, InvalidMaps[inputType].ToString(), inputType);
            var response = handler.BulkUpdate <BulkUpdateResponse>(request, System.Net.Http.HttpMethod.Post);

            if (resultCode == System.Net.HttpStatusCode.OK)
            {
                PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.OK));
            }
            else
            {
                PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
            }
        }
示例#11
0
        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));
        }
示例#12
0
        public void ReadHrbcCoreTmpCompanyInfoInvalidTest(Fields field, InvalidTestCases inputType)
        {
            var fieldName          = Char.ToLowerInvariant(field.ToString()[0]) + field.ToString().Substring(1);
            var companyInfoHandler = new HrbcCoreManager();

            var request = new Dictionary <string, string>()
            {
                ["companyId"] = CompanyId,
                ["fullMode"]  = "true",
            };

            InvalidMapperValues[inputType](fieldName, CompanyName, request);

            var response = (inputType == InvalidTestCases.Missing && field == Fields.CompanyId) ? companyInfoHandler.SendHrbcCoreTmpCompanyInfoWithMissingCompanyId <HrbcCoreTmpCompanyInfoResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get) :
                           companyInfoHandler.SendHrbcCoreTmpCompanyInfo <HrbcCoreTmpCompanyInfoResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(HttpStatusCode.BadRequest));
        }
        public void TestBulkDeleteGenarateInvalid(ParametersBulkDelete parameter, InvalidTestCases inputType, System.Net.HttpStatusCode resultCode)
        {
            var handler = new DefaultManager();
            var request = DefaultBulkDeleteParametersWithRecordIds(ResourceId.Client, new List <string> {
                RecordsCreator.Data[$"{ResourceId.Client}0"].Id.ToString()
            });

            request = GetRequestForBulkDelete(ResourceId.Client, request, parameter, InvalidMaps[inputType].ToString(), inputType);
            var response = handler.Send <object>(BulkDeleteEndpoint, request.ToJson(), HttpMethod.POST);

            if (resultCode == System.Net.HttpStatusCode.OK)
            {
                PrAssert.That(response, PrIs.SuccessfulResponse().And.HttpCode(System.Net.HttpStatusCode.OK));
            }
            else
            {
                PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
            }
        }
示例#14
0
        public void ReadHrbcCoreSessionInvalidTest(Fields field, InvalidTestCases 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),
            };

            InvalidMapperValues[inputType](fieldName, CompanyName, request);
            creds.Dispose();

            var response = readSessionHandler.SendHrbcCoreSession <HrbcCoreSessionResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(HttpStatusCode.BadRequest));
        }
示例#15
0
        private Dictionary <string, object> GetParameters(ResourceId resourceId, InvalidTestCases inputType, Parameters param)
        {
            var parameters = new Dictionary <InvalidTestCases, Dictionary <string, object> >()
            {
                [InvalidTestCases.Empty]            = GetParameterValue(resourceId, param.ToString(), ""),
                [InvalidTestCases.Null]             = GetParameterValue(resourceId, param.ToString(), null),
                [InvalidTestCases.True]             = GetParameterValue(resourceId, param.ToString(), "true"),
                [InvalidTestCases.False]            = GetParameterValue(resourceId, param.ToString(), "false"),
                [InvalidTestCases.Yes]              = GetParameterValue(resourceId, param.ToString(), "Yes"),
                [InvalidTestCases.No]               = GetParameterValue(resourceId, param.ToString(), "No"),
                [InvalidTestCases.Zero]             = GetParameterValue(resourceId, param.ToString(), "0"),
                [InvalidTestCases.AlphabetChar]     = GetParameterValue(resourceId, param.ToString(), "abczyz"),
                [InvalidTestCases.ArrayNoneExistId] = GetParameterValue(resourceId, param.ToString(), new List <string> {
                    "888888045", "9999998045"
                }),
                [InvalidTestCases.BigInteger]  = GetParameterValue(resourceId, param.ToString(), "46455456456454545555541"),
                [InvalidTestCases.LongString]  = GetParameterValue(resourceId, param.ToString(), TestContext.CurrentContext.Random.GetString(10000, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")),
                [InvalidTestCases.NoneExistId] = GetParameterValue(resourceId, param.ToString(), "888888045"),
                [InvalidTestCases.SpecialChar] = GetParameterValue(resourceId, param.ToString(), "!@#$%^&*()"),
                [InvalidTestCases.Missing]     = GetMissingParameter(resourceId, param.ToString()),
            };

            return(parameters[inputType]);
        }
示例#16
0
        private Dictionary <string, object> GetRequestContentForInvalidDashboardRegistration(DashboardHelpers.Parameters parameter, InvalidTestCases inputType)
        {
            var orginalRequest = new Dictionary <string, object>(DashboardHelpers.DashboardRegistrationDefaultParameters(UserIds));
            var request        = orginalRequest["settings"] as Dictionary <string, object>;
            var parameterName  = Char.ToLowerInvariant(parameter.ToString()[0]) + parameter.ToString().Substring(1);

            if (inputType != InvalidTestCases.Missing)
            {
                switch (parameter)
                {
                case DashboardHelpers.Parameters.Agents:
                    request["owners"] = new Dictionary <string, string>
                    {
                        ["agents"] = inputType == InvalidTestCases.Negative ? "-2" : InvalidMaps[inputType].ToString()
                    };
                    break;

                case DashboardHelpers.Parameters.Depts:
                    request["owners"] = new Dictionary <string, string>
                    {
                        ["depts"] = InvalidMaps[inputType].ToString()
                    };
                    break;

                case DashboardHelpers.Parameters.TimePeriodType:
                    request["timePeriod"] = new Dictionary <string, string>
                    {
                        ["type"] = InvalidMaps[inputType].ToString()
                    };
                    break;

                case DashboardHelpers.Parameters.Settings:
                    orginalRequest["settings"] = InvalidMaps[inputType].ToString();
                    break;

                case DashboardHelpers.Parameters.Type:
                    orginalRequest["type"] = InvalidMaps[inputType].ToString();
                    break;

                default:
                    request[parameterName] = InvalidMaps[inputType].ToString();
                    break;
                }
            }
            else
            if (inputType == InvalidTestCases.Missing)
            {
                if (DashboardHelpers.Parameters.Settings == parameter || DashboardHelpers.Parameters.Type == parameter)
                {
                    orginalRequest.Remove(parameterName);
                }
                else
                if (DashboardHelpers.Parameters.Agents == parameter || DashboardHelpers.Parameters.Depts == parameter)
                {
                    (request["owners"] as Dictionary <string, List <int> >).Remove(parameterName);
                }
                else
                if (DashboardHelpers.Parameters.TimePeriodType == parameter)
                {
                    (request["timePeriod"] as Dictionary <string, string>).Remove("type");
                }
                else
                {
                    request.Remove(parameterName);
                }
            }
            orginalRequest["settings"] = request;
            return(orginalRequest);
        }
        private static Dictionary <string, object> GetRequestForBulkCreate(Dictionary <string, object> request, ParametersBulkCreate parameter, string valueInput, InvalidTestCases inputType = InvalidTestCases.Empty)
        {
            var tmpRequest = request["create"] as Dictionary <string, object>;
            var entries    = (tmpRequest["entries"] as List <Dictionary <string, object> >)[0];
            var merge      = entries["merge"] as Dictionary <string, object>;
            var records    = merge["records"] as Dictionary <string, object>;

            switch (parameter)
            {
            case ParametersBulkCreate.Ids:
                if (inputType != InvalidTestCases.Missing)
                {
                    records["ids"] = valueInput;
                }
                else
                {
                    records.Remove("ids");
                }
                break;

            case ParametersBulkCreate.PhpSearch:
                if (inputType != InvalidTestCases.Missing)
                {
                    records["phpSearch"] = valueInput;
                }
                else
                {
                    records.Remove("phpSearch");
                }
                break;

            case ParametersBulkCreate.FieldName:
                if (inputType != InvalidTestCases.Missing)
                {
                    entries["fields"] = new Dictionary <string, string>
                    {
                        [valueInput] = "Test"
                    };
                }
                else
                {
                    entries["fields"] = new Dictionary <string, string>();
                }
                break;

            case ParametersBulkCreate.Field:
                if (inputType != InvalidTestCases.Missing)
                {
                    merge["field"] = valueInput;
                }
                else
                {
                    merge.Remove("field");
                }
                break;

            case ParametersBulkCreate.Fields:
                if (inputType != InvalidTestCases.Missing)
                {
                    entries["fields"] = valueInput;
                }
                else
                {
                    merge.Remove("fields");
                }
                break;

            case ParametersBulkCreate.Resource:
                if (inputType != InvalidTestCases.Missing)
                {
                    entries["resource"] = valueInput;
                }
                else
                {
                    entries.Remove("resource");
                }
                break;

            case ParametersBulkCreate.Merge:
                if (inputType != InvalidTestCases.Missing)
                {
                    entries["merge"] = valueInput;
                }
                else
                {
                    entries.Remove("merge");
                }
                break;

            case ParametersBulkCreate.Records:
                if (inputType != InvalidTestCases.Missing)
                {
                    merge["records"] = valueInput;
                }
                else
                {
                    merge.Remove("records");
                }
                break;

            default:
                if (inputType != InvalidTestCases.Missing)
                {
                    tmpRequest[parameter.ToString().ToLower()] = valueInput;
                }
                else
                {
                    tmpRequest.Remove(parameter.ToString().ToLower());
                }
                break;
            }
            request["create"] = tmpRequest;
            return(request);
        }
        private Dictionary <string, object> GetParameters(InvalidTestCases inputType, Fields field)
        {
            var parameterRequest        = new Dictionary <string, object>(Common.ResetPasswordParameters);
            var fieldName               = Char.ToLowerInvariant(field.ToString()[0]) + field.ToString().Substring(1);
            var defaultCompanyLoginId   = TestContext.CurrentContext.Test.Properties.Get("companyName").ToString();
            var defaultUserName         = TestContext.CurrentContext.Test.Properties.Get("adminUserLogin").ToString();
            var defaultNormalUser       = TestContext.CurrentContext.Test.Properties.Get("adminUser2Login").ToString();
            var defaultPassword         = TestContext.CurrentContext.Test.Properties.Get("adminUserPassword").ToString();
            var tokenFromCurrentCompany = Common.RefreshToken(defaultCompanyLoginId, defaultUserName);

            parameterRequest["companyLoginId"] = defaultCompanyLoginId;
            parameterRequest["username"]       = defaultUserName;
            parameterRequest["newPassword"]    = NewPassword;
            parameterRequest["token"]          = tokenFromCurrentCompany;
            parameterRequest[fieldName]        = InvalidMappingValues[inputType];

            var arrayParameters = new Dictionary <Fields, object>()
            {
                [Fields.CompanyLoginId] = new List <string> {
                    defaultCompanyLoginId, defaultCompanyLoginId
                },
                [Fields.Username] = new List <string> {
                    defaultUserName, defaultUserName
                },
                [Fields.NewPassword] = new List <string> {
                    NewPassword, NewPassword
                },
                [Fields.Token] = new List <string> {
                    tokenFromCurrentCompany, tokenFromCurrentCompany
                },
                [Fields.CheckOldPasswords] = new List <int> {
                    1, 2
                },
            };

            switch (inputType)
            {
            case InvalidTestCases.Array:
                parameterRequest[fieldName] = arrayParameters[field];
                break;

            case InvalidTestCases.Missing:
                parameterRequest.Remove(fieldName);
                break;

            case InvalidTestCases.NoneExistField:
                parameterRequest["my" + field.ToString()] = "NotExistFieldValue";
                break;

            case InvalidTestCases.CurrentPassword:
                parameterRequest[fieldName] = defaultPassword;
                break;

            case InvalidTestCases.PreviousPassword:
                UpdateNewPassword(NewPassword, defaultPassword);
                parameterRequest[fieldName] = defaultPassword;
                break;

            case InvalidTestCases.TokenFromOtherAccount:
                parameterRequest[fieldName] = RefreshToken(TestContext.CurrentContext.Test.Properties.Get("otherCompanyName").ToString(),
                                                           TestContext.CurrentContext.Test.Properties.Get("otherAdminUserLogin").ToString());
                break;

            case InvalidTestCases.RandomToken:
                parameterRequest[fieldName] = TestContext.CurrentContext.Random.GetString(39, "abcdefghijklmnopqrstuvwxyz0123456789");
                break;

            case InvalidTestCases.WrongSuffix:
                parameterRequest[string.Format(InvalidMappingValues[InvalidTestCases.WrongSuffix].ToString(), fieldName)] = Common.ResetPasswordParameters[fieldName];
                break;

            case InvalidTestCases.LocalPartEmailAddress:
                parameterRequest[fieldName] = defaultUserName.Split('@')[0];
                break;

            case InvalidTestCases.NormalUser:
                parameterRequest[fieldName] = defaultNormalUser.Split('@')[0];
                break;
            }
            return(parameterRequest);
        }
        private static Dictionary <string, object> GetRequestForBulkUpdate(Dictionary <string, object> request, Parameters parameter, string valueInput, InvalidTestCases inputType = InvalidTestCases.Empty)
        {
            var tmpRequest = request["create"] as Dictionary <string, object>;

            switch (parameter)
            {
            case Parameters.Ids:
                if (inputType != InvalidTestCases.Missing)
                {
                    tmpRequest["records"] = new Dictionary <string, object>
                    {
                        ["ids"] = new List <string>()
                        {
                            valueInput
                        },
                        ["phpSearch"] = string.Empty
                    };
                }
                else
                {
                    tmpRequest["records"] = new Dictionary <string, object>
                    {
                        ["phpSearch"] = string.Empty
                    };
                }
                break;

            case Parameters.PhpSearch:
                if (inputType != InvalidTestCases.Missing)
                {
                    var records = tmpRequest["records"] as Dictionary <string, object>;
                    records["phpSearch"] = valueInput;
                }
                else
                {
                    var records = tmpRequest["records"] as Dictionary <string, object>;
                    records.Remove("phpSearch");
                }
                break;

            case Parameters.FieldName:
                if (inputType != InvalidTestCases.Missing)
                {
                    tmpRequest["fields"] = new Dictionary <string, string>
                    {
                        ["P_Name"] = valueInput
                    };
                }
                else
                {
                    tmpRequest["fields"] = new Dictionary <string, string>();
                }
                break;

            case Parameters.Filter:
                if (inputType != InvalidTestCases.Missing)
                {
                    tmpRequest["fields"] = new Dictionary <string, object>
                    {
                        ["P_Name"] = new Dictionary <string, string>
                        {
                            ["filter"]  = valueInput,
                            ["content"] = string.Empty
                        }
                    };
                }
                else
                {
                    tmpRequest["fields"] = new Dictionary <string, object>
                    {
                        ["P_Name"] = new Dictionary <string, string>
                        {
                            ["content"] = string.Empty
                        }
                    };
                }
                break;

            case Parameters.Content:
                if (inputType != InvalidTestCases.Missing)
                {
                    tmpRequest["fields"] = new Dictionary <string, object>
                    {
                        ["P_Name"] = new Dictionary <string, object>
                        {
                            ["filter"]  = Filters.Replace.ToString().ToLower(),
                            ["content"] = valueInput
                        }
                    };
                }
                else
                {
                    tmpRequest["fields"] = new Dictionary <string, object>
                    {
                        ["P_Name"] = new Dictionary <string, object>
                        {
                            ["filter"] = Filters.Replace.ToString().ToLower(),
                        }
                    };
                }
                break;

            default:
                if (inputType != InvalidTestCases.Missing)
                {
                    tmpRequest[parameter.ToString().ToLower()] = valueInput;
                }
                else
                {
                    tmpRequest.Remove(parameter.ToString().ToLower());
                }
                break;
            }
            request["create"] = tmpRequest;
            return(request);
        }
示例#20
0
        public void TestInvalidDashboardRegistration(DashboardHelpers.Parameters parameter, InvalidTestCases inputType)
        {
            var handler  = new DashboardManager(DashboardHelpers.DashboardRegistrationEndPoint);
            var request  = GetRequestContentForInvalidDashboardRegistration(parameter, inputType);
            var response = handler.SendDashboard <object>(request, System.Net.Http.HttpMethod.Put);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
        }
        private static Dictionary <string, object> GetRequestForBulkDelete(ResourceId resource, Dictionary <string, object> request, ParametersBulkDelete parameter, string valueInput, InvalidTestCases inputType = InvalidTestCases.Empty)
        {
            var records = request["records"] as Dictionary <string, object>;

            switch (parameter)
            {
            case ParametersBulkDelete.Ids:
                if (inputType != InvalidTestCases.Missing)
                {
                    records["recordIds"] = valueInput;
                }
                else
                {
                    records.Remove("recordIds");
                    records["conditions"] = GetDefaultSearchFilters(ResourceId.Client).Conditions;
                }
                break;

            case ParametersBulkDelete.Resource:
                if (inputType != InvalidTestCases.Missing)
                {
                    request["resourceId"] = valueInput;
                }
                else
                {
                    request.Remove("resourceId");
                }
                break;

            case ParametersBulkDelete.Records:
                if (inputType != InvalidTestCases.Missing)
                {
                    request["records"] = valueInput;
                }
                else
                {
                    request.Remove("records");
                }
                break;

            case ParametersBulkDelete.Conditions:
                if (inputType != InvalidTestCases.Missing)
                {
                    records.Remove("recordIds");
                    records["conditions"] = valueInput;
                }
                break;

            default:
                if (inputType != InvalidTestCases.Missing)
                {
                    request[parameter.ToString().ToLower()] = valueInput;
                }
                else
                {
                    request.Remove(parameter.ToString().ToLower());
                }
                break;
            }
            return(request);
        }