public static void WhenAspNetResponse(WebTestResponse response, Action callback) { if (response.StatusCode == System.Net.HttpStatusCode.OK) { if (response.ContentType.Contains("text/html") || response.ContentType.Contains("text/plain")) { callback(); } } }
/// <summary> /// Gets the response header. /// </summary> /// <param name="response">The response.</param> /// <returns></returns> private static string GetResponseHeader(WebTestResponse response) { string code = GetHttpCode(response.StatusCode.ToString()); string responseHeader = "HTTP/" + response.ProtocolVersion + " " + code + " " + response.StatusDescription + "\n"; for (int i = 0; i < response.Headers.Count; i++) { responseHeader = responseHeader + response.Headers.AllKeys[i] + ": " + response.Headers[i] + "\n"; } return(responseHeader); }
/// <summary> /// Gets the response string body. /// </summary> /// <param name="body">The body.</param> /// <returns></returns> private static string GetResponseStringBody(WebTestResponse body) { return(body.BodyString); }
/// <summary> /// Gets the test results. /// </summary> /// <param name="method">The method.</param> /// <param name="urlWithQueryString">The URL with query string.</param> /// <param name="requestHttpVersion">The request HTTP version.</param> /// <param name="requestHeaders">The request headers.</param> /// <param name="requestBody">The request body.</param> /// <param name="response">The response.</param> /// <returns></returns> public static string GetTestResults(string method, string urlWithQueryString, string requestHttpVersion, WebTestRequestHeaderCollection requestHeaders, StringHttpBody requestBody, WebTestResponse response) { string methodAndUrlWithQueryString = method + " " + urlWithQueryString + " " + "HTTP/" + requestHttpVersion; string reqHeaders = GetRequestHeader(requestHeaders); string reqBody = GetRequestStringBody(requestBody); string respHeaders = GetResponseHeader(response); string respBody = GetResponseStringBody(response); string finalResult = ">>> REQUEST <<<\n" + methodAndUrlWithQueryString + "\n" + reqHeaders + "\n" + reqBody + "\n\n>>> RESPONSE <<<\n" + respHeaders + "\n" + respBody; return(finalResult); }