public void PrimitiveProperties() { //// Arrange var data = @"{ int: 1, str: ""abc"", bool: true, date: ""2012-07-19"", datetime: ""2012-07-19 10:11:11"", timespan: ""10:11:11"" }"; var generator = new DataToJsonSchemaGenerator(); //// Act var schema = generator.Generate(data); var json = schema.ToJson(); //// Assert Assert.AreEqual(JsonObjectType.Integer, schema.Properties["int"].Type); Assert.AreEqual(JsonObjectType.String, schema.Properties["str"].Type); Assert.AreEqual(JsonObjectType.Boolean, schema.Properties["bool"].Type); Assert.AreEqual(JsonObjectType.String, schema.Properties["date"].Type); Assert.AreEqual(JsonFormatStrings.Date, schema.Properties["date"].Format); Assert.AreEqual(JsonObjectType.String, schema.Properties["datetime"].Type); Assert.AreEqual(JsonFormatStrings.DateTime, schema.Properties["datetime"].Format); Assert.AreEqual(JsonObjectType.String, schema.Properties["timespan"].Type); Assert.AreEqual(JsonFormatStrings.TimeSpan, schema.Properties["timespan"].Format); }
public void PrimitiveArrayProperty() { //// Arrange var data = @"{ array: [ 1, true ] }"; var generator = new DataToJsonSchemaGenerator(); //// Act var schema = generator.Generate(data); var json = schema.ToJson(); var property = schema.Properties["array"].ActualPropertySchema; //// Assert Assert.AreEqual(JsonObjectType.Array, property.Type); Assert.AreEqual(JsonObjectType.Integer, property.Item.ActualSchema.Type); }
/// <summary>Creates a <see cref="JsonSchema4" /> from sample JSON data.</summary> /// <returns>The JSON Schema.</returns> public static JsonSchema4 FromData(string data) { var generator = new DataToJsonSchemaGenerator(); return(generator.Generate(data)); }