Ejemplo n.º 1
0
        public void UserBreadcrumbJsonTest()
        {
            // Text,            // 1 - user breadcrumb       ; {text:,level:}
            DateTime now = DateTime.UtcNow;
            // Yes, TimeUtils.ISO8601DateString for Endpoint and TimeUtils.GMTDateString for Breadcrumb is odd.
            Dictionary <string, Object> data1 = new Dictionary <string, Object>();

            data1["text"]  = "Critter Bowl is Empty!";
            data1["level"] = (int)BreadcrumbTextType.Urgent;
            Breadcrumb breadcrumb1 = new Breadcrumb(TimeUtils.GMTDateString(now), BreadcrumbType.Text, data1);
            // Testing BreadcrumbConverter WriteJson
            string json1 = JsonConvert.SerializeObject(breadcrumb1);

            // We don't assume Dictionary key-value pairs appear in any particular order.
            Assert.IsTrue(json1.IndexOf("\"text\":\"Critter Bowl is Empty!\"") >= 0);
            Assert.IsTrue(json1.IndexOf("\"level\":1") >= 0);
            Assert.IsTrue(json1.IndexOf(",1,{") >= 0);
            Assert.IsTrue(json1.IndexOf("}]") >= 0);
            string json2 = JsonConvert.SerializeObject(breadcrumb1, Formatting.None, new BreadcrumbConverter());

            Debug.WriteLine("json1 == " + json1);
            Debug.WriteLine("json2 == " + json2);
            Assert.AreEqual(json1, json2);
            // Testing BreadcrumbConverter ReadJson
            Breadcrumb breadcrumb2 = JsonConvert.DeserializeObject(json1, typeof(Breadcrumb)) as Breadcrumb;

            Assert.IsNotNull(breadcrumb2);
            string json3 = JsonConvert.SerializeObject(breadcrumb2);

            Debug.WriteLine("json3 == " + json3);
            Assert.AreEqual(json1, json3);
        }
Ejemplo n.º 2
0
        public void NetworkBreadcrumbJsonTest()
        {
            // Network,         // 2 - network breadcrumb    ; [verb,url,...,statusCode,errorCode]
            DateTime now = DateTime.UtcNow;
            // Yes, TimeUtils.ISO8601DateString for Endpoint and TimeUtils.GMTDateString for Breadcrumb is odd.
            Endpoint endpoint1 = new Endpoint(
                "POST",
                "http://www.mrscritter.com",
                TimeUtils.ISO8601DateString(now),
                433,
                3213,
                2478,
                HttpStatusCode.OK,
                WebExceptionStatus.Success);
            Breadcrumb breadcrumb1 = new Breadcrumb(TimeUtils.GMTDateString(now), BreadcrumbType.Network, endpoint1);
            // Testing BreadcrumbConverter WriteJson
            string json1 = JsonConvert.SerializeObject(breadcrumb1);

            // NOTE: VS editor syntax colors embedded URL, but the C# syntax is correct.
            Assert.IsTrue(json1.IndexOf(",2,[\"POST\",\"http://www.mrscritter.com") >= 0);
            Assert.IsTrue(json1.IndexOf(",433,2,3213,2478,200,5,0]]") >= 0);
            string json2 = JsonConvert.SerializeObject(breadcrumb1, Formatting.None, new BreadcrumbConverter());

            Debug.WriteLine("json1 == " + json1);
            Debug.WriteLine("json2 == " + json2);
            Assert.AreEqual(json1, json2);
            // Testing BreadcrumbConverter ReadJson
            Breadcrumb breadcrumb2 = JsonConvert.DeserializeObject(json1, typeof(Breadcrumb)) as Breadcrumb;

            Assert.IsNotNull(breadcrumb2);
            string json3 = JsonConvert.SerializeObject(breadcrumb2);

            Debug.WriteLine("json3 == " + json3);
            Assert.AreEqual(json1, json3);
        }