コード例 #1
0
        public void TestDashboardRegistrationInjection(DashboardHelpers.Parameters parameter, InjectionInput inputType)
        {
            var handler  = new DashboardManager(DashboardHelpers.DashboardRegistrationEndPoint);
            var request  = GetRequestContentForInjectionDashboardRegistration(parameter, inputType);
            var response = handler.SendDashboard <object>(request, System.Net.Http.HttpMethod.Put);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
        }
コード例 #2
0
        public void TestDuplicateParameters(DashboardHelpers.Parameters parameter, DashboardHelpers.Values value)
        {
            var handler                = new DashboardManager(DashboardHelpers.DashboardRegistrationEndPoint);
            var parametersSameValue    = DashboardHelpers.DashboardRegistrationSameValueParameters(parameter, UserIds);
            var parametersNotSameValue = DashboardHelpers.DashboardRegistrationNotSameValueParameters(parameter, UserIds);
            var response               = handler.SendDashboard <object>(value == DashboardHelpers.Values.Same ? parametersSameValue : parametersNotSameValue, System.Net.Http.HttpMethod.Put);

            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(System.Net.HttpStatusCode.BadRequest));
        }
コード例 #3
0
        private Dictionary <string, object> GetRequestContentForInjectionDashboardRegistration(DashboardHelpers.Parameters parameter, InjectionInput inputType)
        {
            var orginalRequest = new Dictionary <string, object>(DashboardHelpers.DashboardRegistrationDefaultParameters(UserIds));
            var request        = orginalRequest["settings"] as Dictionary <string, object>;
            var injectionData  = InjectionInputData.InjectionInputMapper[inputType];

            switch (parameter)
            {
            case DashboardHelpers.Parameters.Agents:
                request["owners"] = new Dictionary <string, string>
                {
                    ["agents"] = injectionData
                };
                break;

            case DashboardHelpers.Parameters.Depts:
                request["owners"] = new Dictionary <string, string>
                {
                    ["depts"] = injectionData
                };
                break;

            case DashboardHelpers.Parameters.TimePeriodType:
                request["timePeriod"] = new Dictionary <string, string>
                {
                    ["type"] = injectionData
                };
                break;

            case DashboardHelpers.Parameters.Type:
                orginalRequest["type"] = injectionData;
                break;

            default:
                request[Char.ToLowerInvariant(parameter.ToString()[0]) + parameter.ToString().Substring(1)] = injectionData;
                break;
            }

            if (parameter == DashboardHelpers.Parameters.Settings)
            {
                orginalRequest["settings"] = injectionData;
            }
            else
            {
                orginalRequest["settings"] = request;
            }

            return(orginalRequest);
        }
コード例 #4
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);
        }