/// <summary> /// Confirms that the <paramref name="value"/> is defined in the enum <typeparamref name="T"/>. /// Supports <see cref="FlagsAttribute"/> attribute. /// </summary> public T IsDefinedWithFlagsSupport <T>(T value, [InvokerParameterName] string paramName = null, OptsFn optsFn = null) where T : struct, Enum { var isEnumDefined = EnumOf <T> .Contains(value); if (!isEnumDefined) { throw Ensure.ExceptionFactory.ArgumentOutOfRangeException( string.Format(ExceptionMessages.Enum_IsValidEnum, value, EnumOf <T> .EnumType), paramName, value, optsFn); } return(value); }
public void From_ReturnsNull_IfStringDoesNotMatch() => EnumOf <Order> .From("").ShouldBe(null);
public void From_ReturnsEnumValue_IfStringDoesMatch() => EnumOf <Order> .From("First").ShouldBe(Order.First);