public void SendAPostRequestWithoutAuthentication(PostCalculateRequest request)
 {
     ClearRequest();
     SetMethod(Method.POST);
     SetResourse(resource);
     AddJsonContent(request);
     restResponse = Execute(url);
 }
 public void SendAPostRequest(PostCalculateRequest request)
 {
     ClearRequest();
     SetMethod(Method.POST);
     SetResourse(resource);
     AddAHeader("x-functions-key", key);
     AddJsonContent(request);
     restResponse = Execute(url);
 }
        public void ApiTest_NegativeTests_BadRequest(string scenario, int leftNumber, string operatorUsed, int rightNumber, HttpStatusCode statusCode)
        {
            var postCalculateRequest = new PostCalculateRequest()
            {
                LeftNumber  = leftNumber,
                RightNumber = rightNumber,
                Operator    = operatorUsed
            };

            calculateAPI.SendAPostRequest(postCalculateRequest);

            //Verify if the status code is correct
            calculateAPI.VerifyStatusCode(statusCode);
        }
        public void ApiTest_PositiveTests_BoundaryTests(int leftNumber, int rightNumber, string operatorUsed, int expectedResult)
        {
            var postCalculateRequest = new PostCalculateRequest()
            {
                LeftNumber  = leftNumber,
                RightNumber = rightNumber,
                Operator    = operatorUsed
            };

            calculateAPI.SendAPostRequest(postCalculateRequest);

            //Verify if the schema matches
            calculateAPI.VerifyPostCalculateResponseSchema();

            //Verify if the status code is correct
            calculateAPI.VerifyStatusCode(System.Net.HttpStatusCode.OK);

            //Verify if returns correct value
            calculateAPI.VerifyPostCalculateResponse(expectedResult);
        }