public void IntegrationTest_Serialize_Deserialize()
        {
            var httpClient          = new HttpClient();
            var httpResponseMessage = httpClient.GetAsync("http://google.com").Result;
            var contentLength       = httpResponseMessage.Content.Headers.ContentLength;
            // access to make sure is populated http://aspnetwebstack.codeplex.com/discussions/388196
            var memoryStream = new MemoryStream();
            var defaultHttpResponseMessageSerializer = new MessageContentHttpMessageSerializer();

            defaultHttpResponseMessageSerializer.SerializeAsync(TaskHelpers.FromResult(httpResponseMessage),
                                                                memoryStream).Wait();
            memoryStream.Position = 0;
            var httpResponseMessage2 =
                defaultHttpResponseMessageSerializer.DeserializeToResponseAsync(memoryStream).Result;

            Assert.AreEqual(httpResponseMessage.StatusCode, httpResponseMessage2.StatusCode, "StatusCode");
            Assert.AreEqual(httpResponseMessage.ReasonPhrase, httpResponseMessage2.ReasonPhrase, "ReasonPhrase");
            Assert.AreEqual(httpResponseMessage.Version, httpResponseMessage2.Version, "Version");
            Assert.AreEqual(httpResponseMessage.Headers.ToString(), httpResponseMessage2.Headers.ToString(),
                            "Headers.ToString()");
            Assert.AreEqual(httpResponseMessage.Content.ReadAsStringAsync().Result,
                            httpResponseMessage2.Content.ReadAsStringAsync().Result, "Content");
            Assert.AreEqual(httpResponseMessage.Content.Headers.ToString(),
                            httpResponseMessage2.Content.Headers.ToString(), "Headers.ToString()");
        }
        public void IntegrationTest_Deserialize()
        {
            var fileStream = new FileStream("msg.bin", FileMode.Open);
            var defaultHttpResponseMessageSerializer = new MessageContentHttpMessageSerializer();
            var httpResponseMessage = defaultHttpResponseMessageSerializer.DeserializeToResponseAsync(fileStream).Result;

            fileStream.Close();
        }
        public void IntegrationTest_Serialize()
        {
            var httpClient          = new HttpClient();
            var httpResponseMessage = httpClient.GetAsync("http://google.com").Result;

            Console.WriteLine(httpResponseMessage.Headers.ToString());
            var defaultHttpResponseMessageSerializer = new MessageContentHttpMessageSerializer();
            var fileStream = new FileStream("msg.bin", FileMode.Create);

            defaultHttpResponseMessageSerializer.SerializeAsync(TaskHelpers.FromResult(httpResponseMessage), fileStream).Wait();
            fileStream.Close();
        }
Ejemplo n.º 4
0
        public async Task Request_Deserialize_Serialize()
        {
            var stream     = Assembly.GetExecutingAssembly().GetManifestResourceStream("CacheCow.Client.Tests.Data.Request.cs");
            var serializer = new MessageContentHttpMessageSerializer();
            var request    = await serializer.DeserializeToRequestAsync(stream);

            var memoryStream = new MemoryStream();
            await serializer.SerializeAsync(request, memoryStream);

            memoryStream.Position = 0;
            var request2 = await serializer.DeserializeToRequestAsync(memoryStream);

            var result = DeepComparer.Compare(request, request2);
        }
Ejemplo n.º 5
0
        public async Task Issue31918_On_Net_Framework()
        {
            var serializer = new MessageContentHttpMessageSerializer();
            var client     = new HttpClient();
            var request    = new HttpRequestMessage(HttpMethod.Get, new Uri("https://google.com"));
            var response   = await client.SendAsync(request);

            var ms = new MemoryStream();
            await serializer.SerializeAsync(response, ms);

            ms.Position = 0;
            var r2 = await serializer.DeserializeToResponseAsync(ms);

            Console.WriteLine(response);
        }
        public void IntegrationTest_Serialize()
        {
            var requestMessage = new HttpRequestMessage(HttpMethod.Get, "http://some.server/api/foo");

            requestMessage.Headers.Range = new RangeHeaderValue(0, 1)
            {
                Unit = "custom"
            };
            var serializer   = new MessageContentHttpMessageSerializer();
            var memoryStream = new MemoryStream();

            serializer.SerializeAsync(requestMessage, memoryStream).Wait();
            memoryStream.Position = 0;
            var request = serializer.DeserializeToRequestAsync(memoryStream).Result;

            Assert.AreEqual(requestMessage.Headers.Range.Unit, request.Headers.Range.Unit);
        }
Ejemplo n.º 7
0
        public async Task IntegrationTest_Deserialize()
        {
            var httpClient          = new HttpClient();
            var httpResponseMessage = await httpClient.GetAsync(IntegrationTests.Url);

            Console.WriteLine(httpResponseMessage.Headers.ToString());
            var defaultHttpResponseMessageSerializer = new MessageContentHttpMessageSerializer();
            var fileStream = new FileStream("msg.bin", FileMode.Create);
            await defaultHttpResponseMessageSerializer.SerializeAsync(httpResponseMessage, fileStream);

            fileStream.Close();

            var fileStream2          = new FileStream("msg.bin", FileMode.Open);
            var httpResponseMessage2 = await defaultHttpResponseMessageSerializer.DeserializeToResponseAsync(fileStream2);

            fileStream.Close();
        }
Ejemplo n.º 8
0
        public async Task Request_Deserialize_Serialize()
        {
            var stream     = Assembly.GetExecutingAssembly().GetManifestResourceStream("CacheCow.Client.Tests.Data.Request.cs");
            var serializer = new MessageContentHttpMessageSerializer();
            var request    = await serializer.DeserializeToRequestAsync(stream);

            var memoryStream = new MemoryStream();
            await serializer.SerializeAsync(request, memoryStream);

            memoryStream.Position = 0;
            var request2 = await serializer.DeserializeToRequestAsync(memoryStream);

            var result = DeepComparer.Compare(request, request2);

            // !! Ignore this until RTM since this is fixed. See http://aspnetwebstack.codeplex.com/workitem/303
            //if (result.Count() > 0)
            //Assert.Fail(string.Join("\r\n", result));
        }
Ejemplo n.º 9
0
        public async Task Response_Deserialize_Serialize()
        {
            var stream     = Assembly.GetExecutingAssembly().GetManifestResourceStream("CacheCow.Client.Tests.Data.Response.cs");
            var serializer = new MessageContentHttpMessageSerializer();
            var response   = await serializer.DeserializeToResponseAsync(stream);

            var memoryStream = new MemoryStream();
            await serializer.SerializeAsync(response, memoryStream);

            memoryStream.Position = 0;
            var response2 = await serializer.DeserializeToResponseAsync(memoryStream);

            var result = DeepComparer.Compare(response, response2);

            if (result.Count() > 0)
            {
                throw new Exception(string.Join("\r\n", result));
            }
        }
Ejemplo n.º 10
0
        public void Response_Deserialize_Serialize_File()
        {
            var stream     = Assembly.GetExecutingAssembly().GetManifestResourceStream("CacheCow.Client.Tests.Data.Response.cs");
            var serializer = new MessageContentHttpMessageSerializer();
            var response   = serializer.DeserializeToResponseAsync(stream).Result;

            using (var fileStream = new FileStream("response.tmp", FileMode.Create))
            {
                serializer.SerializeAsync(TaskHelpers.FromResult(response), fileStream).Wait();

                fileStream.Position = 0;
                var response2 = serializer.DeserializeToResponseAsync(fileStream).Result;
                var result    = DeepComparer.Compare(response, response2);
                if (result.Count() > 0)
                {
                    Assert.Fail(string.Join("\r\n", result));
                }
            }
        }
Ejemplo n.º 11
0
        public void Request_Deserialize_Serialize()
        {
            var stream     = Assembly.GetExecutingAssembly().GetManifestResourceStream("WebApiContribTests.Data.Request");
            var serializer = new MessageContentHttpMessageSerializer();
            var request    = serializer.DeserializeToRequestAsync(stream).Result;

            var memoryStream = new MemoryStream();

            serializer.SerializeAsync(request, memoryStream).Wait();

            memoryStream.Position = 0;
            var request2 = serializer.DeserializeToRequestAsync(memoryStream).Result;
            var result   = DeepComparer.Compare(request, request2);

            if (result.Count() > 0)
            {
                Assert.Fail(string.Join("\r\n", result));
            }
        }
Ejemplo n.º 12
0
        public async Task Response_Deserialize_Serialize()
        {
            var stream     = Assembly.GetExecutingAssembly().GetManifestResourceStream("WebApiContribTests.Data.Response");
            var serializer = new MessageContentHttpMessageSerializer();
            var response   = await serializer.DeserializeToResponseAsync(stream);

            var memoryStream = new MemoryStream();
            await serializer.SerializeAsync(Task.FromResult(response), memoryStream);

            memoryStream.Position = 0;
            var response2 = await serializer.DeserializeToResponseAsync(memoryStream);

            var result = DeepComparer.Compare(response, response2);

            if (result.Count() > 0)
            {
                Assert.Fail(string.Join("\r\n", result));
            }
        }
Ejemplo n.º 13
0
        public async Task Response_Deserialize_Serialize_File()
        {
            var stream     = Assembly.GetExecutingAssembly().GetManifestResourceStream("CacheCow.Client.Tests.Data.Response.cs");
            var serializer = new MessageContentHttpMessageSerializer();
            var response   = await serializer.DeserializeToResponseAsync(stream);

            using (var fileStream = new FileStream(Path.GetTempFileName(), FileMode.Create))
            {
                await serializer.SerializeAsync(response, fileStream);

                fileStream.Position = 0;
                var response2 = await serializer.DeserializeToResponseAsync(fileStream);

                var result = DeepComparer.Compare(response, response2);
                if (result.Count() > 0)
                {
                    throw new Exception(string.Join("\r\n", result));
                }
            }
        }
Ejemplo n.º 14
0
        public async Task Response_Deserialize_Serialize()
        {
            using (var stream = new FileStream("Data/Response.cs", FileMode.Open))
            {
                var serializer = new MessageContentHttpMessageSerializer();
                var response   = await serializer.DeserializeToResponseAsync(stream);

                var memoryStream = new MemoryStream();
                await serializer.SerializeAsync(response, memoryStream);

                memoryStream.Position = 0;
                var response2 = await serializer.DeserializeToResponseAsync(memoryStream);

                var result = DeepComparer.Compare(response, response2);
                if (result.Count() > 0)
                {
                    throw new Exception(string.Join("\r\n", result));
                }
            }
        }
Ejemplo n.º 15
0
        public async Task IntegrationTest_Serialize_Deserialize()
        {
            var httpClient          = new HttpClient();
            var httpResponseMessage = await httpClient.GetAsync(IntegrationTests.Url);

            var contentLength = httpResponseMessage.Content.Headers.ContentLength;             // access to make sure is populated http://aspnetwebstack.codeplex.com/discussions/388196
            var memoryStream  = new MemoryStream();
            var defaultHttpResponseMessageSerializer = new MessageContentHttpMessageSerializer();
            await defaultHttpResponseMessageSerializer.SerializeAsync(httpResponseMessage, memoryStream);

            memoryStream.Position = 0;
            var httpResponseMessage2 = await defaultHttpResponseMessageSerializer.DeserializeToResponseAsync(memoryStream);

            Assert.Equal(httpResponseMessage.StatusCode, httpResponseMessage2.StatusCode);
            Assert.Equal(httpResponseMessage.ReasonPhrase, httpResponseMessage2.ReasonPhrase);
            Assert.Equal(httpResponseMessage.Version, httpResponseMessage2.Version);
            Assert.Equal(httpResponseMessage.Headers.ToString(), httpResponseMessage2.Headers.ToString());
            Assert.Equal(await httpResponseMessage.Content.ReadAsStringAsync(),
                         await httpResponseMessage2.Content.ReadAsStringAsync());
            Assert.Equal(httpResponseMessage.Content.Headers.ToString(),
                         httpResponseMessage2.Content.Headers.ToString());
        }
Ejemplo n.º 16
0
        public async Task Response_Deserialize_Serialize_File()
        {
            using (var stream = new FileStream("Data/Response.cs", FileMode.Open))
            {
                var serializer = new MessageContentHttpMessageSerializer();
                var response   = await serializer.DeserializeToResponseAsync(stream);

                using (var fileStream = new FileStream(Path.GetTempFileName(), FileMode.Create))
                {
                    await serializer.SerializeAsync(response, fileStream);

                    fileStream.Position = 0;
                    var response2 = await serializer.DeserializeToResponseAsync(fileStream);

                    var result = DeepComparer.Compare(response, response2);
                    if (result.Count() > 0)
                    {
                        throw new Exception(string.Join("\r\n", result));
                    }
                }
            }
        }