コード例 #1
0
        public void JsonCodeGenerator_SimpleObjectWithStrings()
        {
            var root = new WithStrings()
            {
                Title    = "test",
                Category = "category"
            };

            var generator  = new JsonCodeGenerator("csharp");
            var classTypes = generator.GenerateClassesTypesFromObject("Root", JsonExtensions.ToJObject(root))
                             .ToLookup(x => x.Name);

            Assert.Equal(1, classTypes.Count());

            var clazz = classTypes["Root"].Single() as JsonCodeGenerator.ClassType;

            Assert.NotNull(clazz);

            Assert.Equal("string", clazz.Properties["Title"].Name);
            Assert.False(clazz.Properties["Title"].IsArray);
            Assert.True(clazz.Properties["Title"].IsPrimitive);

            Assert.Equal("string", clazz.Properties["Category"].Name);
            Assert.False(clazz.Properties["Category"].IsArray);
            Assert.True(clazz.Properties["Category"].IsPrimitive);
        }
コード例 #2
0
        public void JsonCodeGenerator_SimpleObjectWithStrings()
        {
            var root = new WithStrings()
            {
                Title = "test",
                Category = "category"
            };

            var generator = new JsonCodeGenerator("csharp");
            var classTypes = generator.GenerateClassesTypesFromObject("Root", JsonExtensions.ToJObject(root))
                                      .ToLookup(x => x.Name);

            Assert.Equal(1, classTypes.Count());

            var clazz = classTypes["Root"].Single() as JsonCodeGenerator.ClassType;
            Assert.NotNull(clazz);

            Assert.Equal("string", clazz.Properties["Title"].Name);
            Assert.False(clazz.Properties["Title"].IsArray);
            Assert.True(clazz.Properties["Title"].IsPrimitive);

            Assert.Equal("string", clazz.Properties["Category"].Name);
            Assert.False(clazz.Properties["Category"].IsArray);
            Assert.True(clazz.Properties["Category"].IsPrimitive);
        }
コード例 #3
0
        public void JsonCodeGenerator_SimpleObjectGenerator()
        {
            var root = new WithStrings()
            {
                Title    = "test",
                Category = "category"
            };

            var document = new JsonDocument()
            {
                DataAsJson = JsonExtensions.ToJObject(root)
            };

            // "Raven-Clr-Type": "Namespace.ClassName, AssemblyName"
            document.Metadata["Raven-Clr-Type"] = new RavenJValue("NamespaceName.ClassName, AssemblyName");

            var generator = new JsonCodeGenerator("csharp");
            var code      = generator.Execute(document);

            Assert.Contains("namespace NamespaceName", code);
            Assert.Contains("public class ClassName", code);
            Assert.Contains("public string Title { get; set; }", code);
            Assert.Contains("public string Category { get; set; }", code);
        }
コード例 #4
0
        public void JsonCodeGenerator_SimpleObjectGenerator()
        {
            var root = new WithStrings()
            {
                Title = "test",
                Category = "category"
            };

            var document = new JsonDocument()
            {
                DataAsJson = JsonExtensions.ToJObject(root)
            };

            // "Raven-Clr-Type": "Namespace.ClassName, AssemblyName"
            document.Metadata["Raven-Clr-Type"] = new RavenJValue("NamespaceName.ClassName, AssemblyName");

            var generator = new JsonCodeGenerator("csharp");
            var code = generator.Execute(document);

            Assert.Contains("namespace NamespaceName", code);
            Assert.Contains("public class ClassName", code);
            Assert.Contains("public string Title { get; set; }", code);
            Assert.Contains("public string Category { get; set; }", code);
        }