public void CanEnqueueRequestAsync()
        {
            var entry = new Entry
                {
                    Request = new Request
                        {
                            Method = "POST",
                            Url = "http://posttestserver.com/post.php?dump&a={a}",
                            QueryString = new QueryString
                                {
                                    new NameValuePair
                                        {
                                            Name = "a",
                                            Value = "avalue"
                                        }
                                },
                            PostData = new PostData
                                {
                                    MimeType = "text/plain",
                                    Params = new Parameters
                                        {
                                            // naked
                                            new NameValuePair {Name = string.Empty, Value = "fooo"},
                                            //named
                                            new NameValuePair {Name = "param", Value = "paramValue"}
                                        }
                                },
                            Headers = new Headers
                                {
                                    new NameValuePair
                                        {
                                            Name = "arbitrary-header",
                                            Value = "header value"
                                        }
                                }
                        }
                };


            var client = new Client("https://ciapi.cityindex.com/tradingapi", "ciapi.portable");

            Task<Entry> t = client.EnqueueRequestAsync(entry);

            // this will throw if exceptions occur in task
            t.Wait();



            Entry result = t.Result;

            Response response = result.Response;


            string responseText = response.Content.Text;

            Assert.AreEqual(response.Content.Size, responseText.Length);

            Assert.IsTrue(responseText.Contains("HTTP_ARBITRARY_HEADER = header value\n"));
            Assert.IsTrue(responseText.Contains("CONTENT_TYPE = text/plain\n"));
            Assert.IsTrue(responseText.Contains("QUERY_STRING = dump&a=avalue\n"));
            Assert.IsTrue(responseText.Contains("== Begin post body ==\nfooo&param=paramValue\n== End post body ==\n"));
            // 
        }