コード例 #1
0
        public void Properties()
        {
            var time = new DateTime(2013, 03, 27, 10, 00, 00);
            //time.Subtract(new DateTime(1970, 01, 01, 0, 0, 0)).TotalSeconds
            var item = new CI {
                AlteredPermissions = N2.Security.Permission.ReadWrite, AncestralTrail = "/1/", ChildState = N2.Collections.CollectionState.ContainsPublicParts, Created = time, Expires = time, ID = 2, Name = "hello-world", Published = time, SavedBy = "theboyz", SortOrder = 666, State = ContentState.Waiting, TemplateKey = "1234", Title = "Hello World", TranslationKey = 5678, VersionIndex = 222, Visible = false, ZoneName = "HelloZone", Updated = time
            };

            var result = item.ToJson();

            //var jsDatetime = new JavaScriptSerializer().Serialize(time);
            var deserialized = new JavaScriptSerializer().Deserialize <Dictionary <string, object> >(result);

            deserialized["Title"].ShouldBe("Hello World");
            deserialized["AlteredPermissions"].ShouldBe((int)N2.Security.Permission.ReadWrite);
            deserialized["AncestralTrail"].ShouldBe("/1/");
            deserialized["ChildState"].ShouldBe((int)N2.Collections.CollectionState.ContainsPublicParts);
            //deserialized["Created"].ShouldBe(jsDatetime);
            //deserialized["Expires"].ShouldBe(jsDatetime);
            deserialized["ID"].ShouldBe(2);
            deserialized["Name"].ShouldBe("hello-world");
            //deserialized["Published"].ShouldBe(time);
            deserialized["SavedBy"].ShouldBe("theboyz");
            deserialized["SortOrder"].ShouldBe(666);
            deserialized["State"].ShouldBe((int)ContentState.Waiting);
            deserialized["TemplateKey"].ShouldBe("1234");
            deserialized["Title"].ShouldBe("Hello World");
            deserialized["TranslationKey"].ShouldBe(5678);
            deserialized["VersionIndex"].ShouldBe(222);
            deserialized["Visible"].ShouldBe(false);
            deserialized["ZoneName"].ShouldBe("HelloZone");
            deserialized["Updated"].ShouldBe(time);
        }
コード例 #2
0
        public void DetailCollections()
        {
            var item = new CI();

            item.GetDetailCollection("Hello", true).Add("World");

            var result = item.ToJson();

            var deserialized = new JavaScriptSerializer().Deserialize <Dictionary <string, object> >(result);

            deserialized["Hello"].ShouldBe(new[] { "World" });
        }
コード例 #3
0
        public void Details()
        {
            var item = new CI();

            item["Hello"] = "World";

            var result = item.ToJson();

            var deserialized = new JavaScriptSerializer().Deserialize <Dictionary <string, object> >(result);

            deserialized["Hello"].ShouldBe("World");
        }
コード例 #4
0
        public void CircularGraph()
        {
            var parent = new CI { Title = "parent" };
            var child = new CI { Title = "child" };
            child.AddTo(parent);

            var result = parent.ToJson();

            result.ShouldContain("\"Title\":\"parent\"");
            result.ShouldContain("\"Title\":\"child\"");
            result.ShouldContain("\"Parent\":null");
            result.ShouldNotContain("\"Parent\":{");
            result.ShouldContain("\"Children\":[{");
        }
コード例 #5
0
        public void DetailCollections_Link()
        {
            var first = new CI {
                ID = 1, Title = "first"
            };
            var second = new CI {
                ID = 2, Title = "second"
            };

            first.GetDetailCollection("Hello", true).Add(second);

            var result = first.ToJson();

            var deserialized = new JavaScriptSerializer().Deserialize <Dictionary <string, object> >(result);

            deserialized["Hello"].ShouldBe(new[] { 2 });
        }
コード例 #6
0
        public void Details_Link()
        {
            var first = new CI {
                ID = 1, Title = "first"
            };
            var second = new CI {
                ID = 2, Title = "second"
            };

            first["Hello"] = second;

            var result = first.ToJson();

            var deserialized = new JavaScriptSerializer().Deserialize <Dictionary <string, object> >(result);

            deserialized["Hello"].ShouldBe(2);
        }
コード例 #7
0
        public void CircularGraph_Child()
        {
            var parent = new CI {
                ID = 1, Title = "parent"
            };
            var child = new CI {
                ID = 2, Title = "child"
            };

            child.AddTo(parent);

            var result       = child.ToJson();
            var deserialized = new JavaScriptSerializer().Deserialize <Dictionary <string, object> >(result);

            deserialized["Title"].ShouldBe("child");
            deserialized["Parent"].ShouldBe(1);
        }
コード例 #8
0
        public void CircularGraph_Parent()
        {
            var parent = new CI {
                ID = 1, Title = "parent"
            };
            var child = new CI {
                ID = 2, Title = "child"
            };

            child.AddTo(parent);

            var result       = parent.ToJson();
            var deserialized = new JavaScriptSerializer().Deserialize <Dictionary <string, object> >(result);

            deserialized["Title"].ShouldBe("parent");
            deserialized.ContainsKey("Children").ShouldBe(false);
        }
コード例 #9
0
        public void CircularGraph()
        {
            var parent = new CI {
                Title = "parent"
            };
            var child = new CI {
                Title = "child"
            };

            child.AddTo(parent);

            var result = parent.ToJson();

            result.ShouldContain("\"Title\":\"parent\"");
            result.ShouldContain("\"Title\":\"child\"");
            result.ShouldContain("\"Parent\":null");
            result.ShouldNotContain("\"Parent\":{");
            result.ShouldContain("\"Children\":[{");
        }
コード例 #10
0
ファイル: JsonWriterTests.cs プロジェクト: nicklv/n2cms
        public void DetailCollections_Link()
        {

            var first = new CI { ID = 1, Title = "first" };
            var second = new CI { ID = 2, Title = "second" };

            first.GetDetailCollection("Hello", true).Add(second);

            var result = first.ToJson();

            var deserialized = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(result);
            deserialized["Hello"].ShouldBe(new[] { 2 });
        }
コード例 #11
0
ファイル: JsonWriterTests.cs プロジェクト: nicklv/n2cms
        public void DetailCollections()
        {
            var item = new CI();
            item.GetDetailCollection("Hello", true).Add("World");

            var result = item.ToJson();

            var deserialized = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(result);
            deserialized["Hello"].ShouldBe(new[] { "World" });
        }
コード例 #12
0
ファイル: JsonWriterTests.cs プロジェクト: nicklv/n2cms
        public void Details_Link()
        {
            var first = new CI { ID = 1, Title = "first" };
            var second = new CI { ID = 2, Title = "second" };

            first["Hello"] = second;

            var result = first.ToJson();

            var deserialized = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(result);
            deserialized["Hello"].ShouldBe(2);
        }
コード例 #13
0
ファイル: JsonWriterTests.cs プロジェクト: nicklv/n2cms
        public void Details()
        {
            var item = new CI();
            item["Hello"] = "World";

            var result = item.ToJson();

            var deserialized = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(result);
            deserialized["Hello"].ShouldBe("World");
        }
コード例 #14
0
ファイル: JsonWriterTests.cs プロジェクト: nicklv/n2cms
        public void Properties()
        {
            var time = new DateTime(2013, 03, 27, 10, 00, 00);
            //time.Subtract(new DateTime(1970, 01, 01, 0, 0, 0)).TotalSeconds
            var item = new CI { AlteredPermissions = N2.Security.Permission.ReadWrite, AncestralTrail = "/1/", ChildState = N2.Collections.CollectionState.ContainsPublicParts, Created = time, Expires = time, ID = 2, Name = "hello-world", Published = time, SavedBy = "theboyz", SortOrder = 666, State = ContentState.Waiting, TemplateKey = "1234", Title = "Hello World", TranslationKey = 5678, VersionIndex = 222, Visible = false, ZoneName = "HelloZone", Updated = time };

            var result = item.ToJson();

            //var jsDatetime = new JavaScriptSerializer().Serialize(time);
            var deserialized = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(result);
            deserialized["Title"].ShouldBe("Hello World");
            deserialized["AlteredPermissions"].ShouldBe((int)N2.Security.Permission.ReadWrite);
            deserialized["AncestralTrail"].ShouldBe("/1/");
            deserialized["ChildState"].ShouldBe((int)N2.Collections.CollectionState.ContainsPublicParts);
            //deserialized["Created"].ShouldBe(jsDatetime);
            //deserialized["Expires"].ShouldBe(jsDatetime);
            deserialized["ID"].ShouldBe(2);
            deserialized["Name"].ShouldBe("hello-world");
            //deserialized["Published"].ShouldBe(time);
            deserialized["SavedBy"].ShouldBe("theboyz");
            deserialized["SortOrder"].ShouldBe(666);
            deserialized["State"].ShouldBe((int)ContentState.Waiting);
            deserialized["TemplateKey"].ShouldBe("1234");
            deserialized["Title"].ShouldBe("Hello World");
            deserialized["TranslationKey"].ShouldBe(5678);
            deserialized["VersionIndex"].ShouldBe(222);
            deserialized["Visible"].ShouldBe(false);
            deserialized["ZoneName"].ShouldBe("HelloZone");
            deserialized["Updated"].ShouldBe("2013-03-27T09:00:00.000Z");
        }
コード例 #15
0
ファイル: JsonWriterTests.cs プロジェクト: nicklv/n2cms
        public void CircularGraph_Child()
        {
            var parent = new CI { ID = 1, Title = "parent" };
            var child = new CI { ID = 2, Title = "child" };
            child.AddTo(parent);

            var result = child.ToJson();
            var deserialized = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(result);

            deserialized["Title"].ShouldBe("child");
            deserialized["Parent"].ShouldBe(1);
        }
コード例 #16
0
ファイル: JsonWriterTests.cs プロジェクト: nicklv/n2cms
        public void CircularGraph_Parent()
        {
            var parent = new CI { ID = 1, Title = "parent" };
            var child = new CI { ID = 2, Title = "child" };
            child.AddTo(parent);

            var result = parent.ToJson();
            var deserialized = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(result);

            deserialized["Title"].ShouldBe("parent");
            deserialized.ContainsKey("Children").ShouldBe(false);
        }