예제 #1
0
        public static void Enum_Succeeds_ForAliasValue(string value)
        {
            var result = ParseTo.Enum <My.Enum012>(value);

            Assert.True(result.HasValue);
            Assert.Equal(My.Enum012.Alias1, result.Value);
        }
예제 #2
0
        public static void Enum_Succeeds_ForCompositeValue_BitFlagsEnum(string value)
        {
            var result = ParseTo.Enum <My.EnumBits>(value);

            Assert.True(result.HasValue);
            Assert.Equal(My.EnumBits.OneTwo, result.Value);
        }
예제 #3
0
        // Weird but passing any integer value will succeed.
        public static void Enum_Succeeds_ForInvalidIntegerInput(string value)
        {
            var result = ParseTo.Enum <My.Enum012>(value);

            Assert.True(result.HasValue);
            Assert.Equal((My.Enum012) 4, result.Value);
        }
예제 #4
0
        public static void Enum_ReturnsNull_ForCompositeValue_BitFlagsEnum_DoNotIgnoreCase(string value)
        {
            var result = ParseTo.Enum <My.EnumBits>(value, ignoreCase: false);

            Assert.False(result.HasValue);
        }
예제 #5
0
        public static void Enum_ReturnsNull_ForAliasValue_DoNotIgnoreCase(string value)
        {
            var result = ParseTo.Enum <My.Enum012>(value, ignoreCase: false);

            Assert.False(result.HasValue);
        }
예제 #6
0
        public static void Enum_ReturnsNull_ForInvalidValue(string value)
        {
            var result = ParseTo.Enum <My.Enum012>(value);

            Assert.False(result.HasValue);
        }
예제 #7
0
 public static void Enum_ThrowsArgumentException_ForNonEnumerationStruct()
 => Assert.Throws <ArgumentException>(() => ParseTo.Enum <My.EmptyVal>("Whatever"));
예제 #8
0
 public static void Enum_ThrowsArgumentException_ForInt32()
 => Assert.Throws <ArgumentException>(() => ParseTo.Enum <int>("Whatever"));