示例#1
0
        public void ReadHrbcCoreTmpCompanyInfoInvalidSpecialTest(InvalidSpecialTestCases inputType)
        {
            ApiResponse <HrbcCoreTmpCompanyInfoResponse> response = null;
            var companyInfoHandler = new HrbcCoreManager();

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

            switch (inputType)
            {
            case InvalidSpecialTestCases.NoDataInRequest:
                response = companyInfoHandler.SendHrbcCoreTmpCompanyInfo <HrbcCoreTmpCompanyInfoResponse>(_testConnection, System.Net.Http.HttpMethod.Get);
                break;

            case InvalidSpecialTestCases.LoginAdminUserSendRequestOtherCompany:
                request["companyId"] = OtherCompanyId;
                response             = companyInfoHandler.SendHrbcCoreTmpCompanyInfo <HrbcCoreTmpCompanyInfoResponse>(_testConnection, request, System.Net.Http.HttpMethod.Get);
                break;

            case InvalidSpecialTestCases.IncludeCompanyIdIntoParameter:
                response = companyInfoHandler.SendHrbcCoreIncludeCompanyIdIntoParamerter <HrbcCoreTmpCompanyInfoResponse>(_testConnection, request);
                break;
            }
            PrAssert.That(response, PrIs.ErrorResponse().And.HttpCode(HttpStatusCode.BadRequest));
        }
示例#2
0
        public void InternalInvalidSpecialTest(InvalidSpecialTestCases 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 headerValue     = InvalidSpecialMapperValues[inputType](companyId, adminUserId, DefaultService).ToString();
            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 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));
        }