public void ParseEnumFlags() { var enumType = new EdmEnumType() { Name = "Namespace.Color", IsFlags = true, Members = new[] { new EdmEnumMember { Name = "Black", EvaluatedValue = 1}, new EdmEnumMember { Name = "White", EvaluatedValue = 2}, } }; var propertyType = new EdmEnumPropertyType() { Type = enumType }; Assert.Equal(3, _parser.ParseValue("Namespace.Color'Black,White'", propertyType)); }
public void ParseEnumInvalid() { var enumType = new EdmEnumType() { Name = "Namespace.Color", Members = new[] { new EdmEnumMember { Name = "Black", EvaluatedValue = 0}, new EdmEnumMember { Name = "White", EvaluatedValue = 1}, } }; var propertyType = new EdmEnumPropertyType() { Type = enumType }; Assert.Throws<FormatException>(() => _parser.ParseValue("Namespace.Color'None'", propertyType)); }
public void ParseEnumLong() { var enumType = new EdmEnumType() { Name = "Namespace.Color", UnderlyingType = "Edm.Int64", Members = new[] { new EdmEnumMember { Name = "Black", EvaluatedValue = 0}, new EdmEnumMember { Name = "White", EvaluatedValue = 1}, } }; var propertyType = new EdmEnumPropertyType() { Type = enumType }; Assert.Equal(1L, _parser.ParseValue("Namespace.Color'White'", propertyType)); }