public void JsonWeaklyTypedContractTest()

in ServiceSamples/ServiceTests/JsonTests.cs [83:123]


        public void JsonWeaklyTypedContractTest()
        {
            var request = HttpWebRequest.Create(ApplyTimeZoneOperationPath);
            request.Headers[OAuthHelper.OAuthHeader] = OAuthHelper.GetAuthenticationHeader();
            request.Method = "POST";

            DateTime inputDateTime = DateTime.Now;
            var requestContract = new
            {
                dateTime = inputDateTime,
                timeZoneOffset = 3
            };
            var requestContractString = JsonConvert.SerializeObject(requestContract);

            using (var stream = request.GetRequestStream())
            {
                using (var writer = new StreamWriter(stream))
                {
                    writer.Write(requestContractString);
                }
            }

            using (var response = (HttpWebResponse)request.GetResponse())
            {
                using (Stream responseStream = response.GetResponseStream())
                {
                    using (StreamReader streamReader = new StreamReader(responseStream))
                    {
                        string responseString = streamReader.ReadToEnd();
                        JToken jsonObject = JToken.Parse(responseString);
                        DateTime appliedTimeZone = jsonObject.Value<DateTime>();

                        Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
                        Assert.IsFalse(string.IsNullOrEmpty(responseString));
                        Console.WriteLine(responseString);
                        Assert.IsNotNull(appliedTimeZone);
                        Assert.AreNotEqual(appliedTimeZone.Hour, inputDateTime.Hour);
                    }
                }
            }
        }