public void Request_Deserialize_Serialize() { var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("CacheCow.Client.Tests.Data.Request.bin"); 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); // !! 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)); }
public void Request_Deserialize_Serialize_File() { var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("CacheCow.Client.Tests.Data.Request.bin"); var serializer = new MessageContentHttpMessageSerializer(); var request = serializer.DeserializeToRequestAsync(stream).Result; using(var fileStream = new FileStream("request.tmp", FileMode.Create)) { serializer.SerializeAsync(request, fileStream).Wait(); fileStream.Position = 0; var request2 = serializer.DeserializeToRequestAsync(fileStream).Result; var result = DeepComparer.Compare(request, request2); if (result.Count() > 0) Assert.Fail(string.Join("\r\n", result)); } }
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); }