public void SetUp()
        {
            stream = new SynchronousMemoryStream();
            requestString = "GET / HTTP/1.0\r\n\r\n";
            stream.Write(Encoding.ASCII.GetBytes(requestString), 0, requestString.Length);
            stream.Position = 0;
            mockSocket = new Mock<ISocket>();
            //mockSocket.Setup(s => s.GetStream()).Returns(stream).Verifiable();
            //context = new KayakContext(mockSocket.Object);
            //context.Subscribe(n => { }, e => contextException = e, () => contextCompleted = true);

            headers = new Dictionary<string, string>();
            headers["Server"] = "Kayak";
            headers["Date"] = DateTime.UtcNow.ToString();

            body = null;
        }
        void SetUpContext()
        {
            var requestData = string.Format("{0} {1} {2}\r\n", verb, requestUri, httpVersion);

            if (headers != null)
                foreach (var pair in headers)
                    requestData += string.Format("{0}: {1}\r\n", pair.Key, pair.Value);

            requestData += "\r\n";

            if (body != null)
                requestData += body;

            Console.WriteLine("Sending request with data:\r\n" + requestData);
            var requestStream = new SynchronousMemoryStream(Encoding.UTF8.GetBytes(requestData));
            mockSocket = new Mock<ISocket>();
            //mockSocket.Setup(s => s.GetStream()).Returns(requestStream).Verifiable();

            //context = new KayakContext(mockSocket.Object);

            //var cx = context.Subscribe(u => contextGeneratedUnit = true, e => contextException = e);
        }