internal static void RewriteHeadersWithParameters(HttpRequest request, IEnumerable<PlaceholderValue> headerParameters)
        {
            foreach (var param in headerParameters)
            {
                string headerName = param.PlaceholderKey;
                if (param.PlaceholderKey.EndsWith(":"))
                    headerName = param.PlaceholderKey.Substring(0, param.PlaceholderKey.Length - 1);

                if (param.Value == null)
                    request.Headers.Remove(headerName);
                else 
                    request.Headers[headerName] = param.Value;
            }
        }
 /// <summary>
 /// Breaks down the key/value string and adds to the request header
 /// </summary>
 /// <param name="headerKeyValueString"></param>
 /// <returns></returns>
 internal static void AddAdditionalHeadersToRequest(IServiceAccount account, HttpRequest request)
 {
     // parse the passed in addtional headers and add to request..format for headers should be <HeaderName>:<HeaderValue>
     if (account.AdditionalHeaders != null && account.AdditionalHeaders.Length > 0)
     {
         foreach (string nameValueHeader in account.AdditionalHeaders)
         {
             string[] split = nameValueHeader.Split(new Char[] { ':' }, 2);
             request.Headers.Add(split[0], split[1]);
         }
     }
 }    
 internal static void AddAccessTokenToRequest(AuthenicationCredentials credentials, HttpRequest request)
 {
     credentials.AuthenticateRequest(request);
 }
 /// <summary>
 /// Add information about the test that generated this call to the request headers.
 /// </summary>
 /// <param name="scenario"></param>
 /// <param name="request"></param>
 internal static void AddTestHeaderToRequest(ScenarioDefinition scenario, HttpRequest request)
 {
     var headerValue = string.Format(
         "method-name: {0}; scenario-name: {1}",
         scenario.MethodName,
         scenario.Description);
     request.Headers.Add("ApiDocsTestInfo", headerValue);
 }