public void ReadStatusLine_ValidStatusCode_ResponseMessageValueSet(string statusLine, HttpStatusCode expectedCode, string expectedPhrase)
        {
            HttpResponseMessage response = new HttpResponseMessage();

            CurlResponseParseUtils.ReadStatusLine(response, statusLine);
            Assert.Equal <HttpStatusCode>(expectedCode, response.StatusCode);
            Assert.Equal <string>(expectedPhrase, response.ReasonPhrase);
        }
        public void ReadStatusLine_ValidStatusCodeLine_ResponseMessageVersionSet(string statusLine, int major, int minor)
        {
            HttpResponseMessage response = new HttpResponseMessage();

            CurlResponseParseUtils.ReadStatusLine(response, statusLine);
            int expectedMajor = 0;
            int expectedMinor = 0;

            if (major == 1 && (minor == 0 || minor == 1))
            {
                expectedMajor = 1;
                expectedMinor = minor;
            }

            Assert.Equal <int>(expectedMajor, response.Version.Major);
            Assert.Equal <int>(expectedMinor, response.Version.Minor);
        }
        public void ReadStatusLine_InvalidStatusCode_ThrowsHttpRequestException(string statusLine, HttpStatusCode expectedCode, string phrase)
        {
            HttpResponseMessage response = new HttpResponseMessage();

            Assert.Throws <HttpRequestException>(() => CurlResponseParseUtils.ReadStatusLine(response, statusLine));
        }