public void TestDraft04Schema() { JSONSchema draft04Schema = new JSONSchema(draft04SchemaJson); Console.WriteLine(draft04Schema.GetHashCode()); Console.WriteLine(draft04Schema.ToString()); TestSimpleType(draft04Schema, "object"); Assert.That(draft04Schema.Properties.ContainsKey("id")); Assert.That(draft04Schema.Properties.ContainsKey("$schema")); JSONSchema idSchema = draft04Schema.Properties["id"]; TestSimpleType(idSchema, "string"); JSONSchema additionalItems = draft04Schema.Properties["additionalItems"]; Assert.NotNull(additionalItems.AnyOf); SchemaArray anyOf = additionalItems.AnyOf as SchemaArray; TestSimpleType(anyOf[0], "boolean"); Assert.AreEqual(draft04Schema, draft04Schema.Properties["not"]); }
public static bool IsValid <T>(this SchemaArray <T> array) where T : SchemaElement { if (array == null) { return(false); } return(true); }
public static bool IsInherited( this EntityInfo entity, SchemaArray <EntityInfo> entities) { var entityComparer = new EntityInfoComparer(); return(entities .Where(e => e.IsValid() && e.BaseEntity.IsValid() && entityComparer.Equals( entity, e.BaseEntity)) .Any()); }
/// <summary> /// Retrieve all entity models. /// </summary> /// <param name="smartApp">A SmartAppInfo object.</param> public static SchemaArray <EntityInfo> GetModels(this SmartAppInfo smartApp) { var models = new SchemaArray <EntityInfo>(); if (!smartApp.IsValid()) { return(models); } if (smartApp.DataModel.IsValid()) { models = smartApp.DataModel.Entities; } return(models); }