Exemplo n.º 1
0
        public static HttpRequestMessage CreateDataContractGetRequest(MediaTypeWithQualityHeaderValue mediaType)
        {
            HttpRequestMessage request = GenericWebService.GetRequest();

            request.Headers.Accept.Add(mediaType);
            return(request);
        }
Exemplo n.º 2
0
        public void GetReadAsXml()
        {
            IEnumerable <TestData> testData   = TestData.RepresentativeValueAndRefTypeTestDataCollection;
            TestDataVariations     variations = TestDataVariations.AllNonInterfaces;
            XmlMediaTypeFormatter  formatter  = new XmlMediaTypeFormatter();

            MediaTypeFormatter[] formatters = new MediaTypeFormatter[] { formatter };

            TestDataAssert.Execute(
                testData,
                variations,
                "ObjectContent serializing using the Xml DataContractSerializer failed.",
                (type, obj) =>
            {
                GenericWebService service   = GenericWebService.GetServiceInstance(type, obj.GetType());
                service.OnGetReturnInstance = () => obj;

                HttpServiceHostAssert.Execute(
                    service,
                    GenericWebService.GetRequest(),
                    (response) =>
                {
                    Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "Response status code should have been a 200.");

                    formatter.SetSerializer(type, new DataContractSerializer(type, new Type[] { obj.GetType() }));
                    string stringContent = response.Content.ReadAsString();
                    object readObj       = response.Content.ReadAs(type, formatters);
                    TestDataAssert.AreEqual(obj, readObj, string.Format("Failed to round trip type '{0}'.  Content was:\r\n{1}.", type.Name, stringContent));
                });
            });
        }