public void MemberNullability(Nullability nullability, Type type, SchemaValueType valueType) { var config = new SchemaGeneratorConfiguration { Nullability = nullability }; // Nullability affects root schema so only PropertiesKeywords are compared var expected = new JsonSchemaBuilder() .Properties( (nameof(ReferenceMember.Property), new JsonSchemaBuilder().Type(valueType))) .Build() .Keywords .OfType <PropertiesKeyword>() .First(); var actual = new JsonSchemaBuilder() .FromType(type, config) .Build() .Keywords .OfType <PropertiesKeyword>() .First(); Assert.AreEqual(expected, actual); }
public void CheckSimpleTypes(Type dotnetType, SchemaValueType schemaType) { JsonSchema expected = new JsonSchemaBuilder().Type(schemaType); JsonSchema actual = new JsonSchemaBuilder().FromType(dotnetType); Assert.AreEqual(expected, actual); }
public void TypeNullability(Nullability nullability, Type type, SchemaValueType valueType) { var config = new SchemaGeneratorConfiguration { Nullability = nullability }; var expected = new JsonSchemaBuilder() .Type(valueType) .Build(); var actual = new JsonSchemaBuilder() .FromType(type, config) .Build(); Assert.AreEqual(expected, actual); }
/// <summary> /// Creates a new <see cref="TypeKeyword"/>. /// </summary> /// <param name="types">The expected types.</param> public TypeKeyword(IEnumerable <SchemaValueType> types) { // TODO: protect input Type = types.Aggregate((x, y) => x | y); }
/// <summary> /// Creates a new <see cref="TypeKeyword"/>. /// </summary> /// <param name="types">The expected types.</param> public TypeKeyword(params SchemaValueType[] types) { // TODO: protect input Type = types.Aggregate((x, y) => x | y); }
/// <summary> /// Creates a new <see cref="TypeKeyword"/>. /// </summary> /// <param name="type">The expected type.</param> public TypeKeyword(SchemaValueType type) { Type = type; }
/// <summary> /// Creates a new <see cref="TypeIntent"/> instance. /// </summary> /// <param name="type">The type.</param> public TypeIntent(SchemaValueType type) { Type = type; }