public void TestParseFlagsEnum(string enumVal, bool ignoreCase = false)
        {
            FlagsLongEnum ourResult = !ignoreCase?Enums.Parse <FlagsLongEnum>(enumVal) : Enums.Parse <FlagsLongEnum>(enumVal, true);

            var theirResult = (FlagsLongEnum)Enum.Parse(typeof(FlagsLongEnum), enumVal);

            ourResult.ShouldBeEquivalentTo(theirResult);
        }
Example #2
0
        static void AddFlags(int runs)
        {
            FlagsLongEnum one = FlagsLongEnum.One, two = FlagsLongEnum.Eight, three = FlagsLongEnum.Five, result = default(FlagsLongEnum);

            for (var i = 0; i < runs; i++)
            {
                result = one.AddFlags(two, three);
            }
        }
Example #3
0
        static void ParseCaseInsensitive(int runs)
        {
            FlagsLongEnum pone = default(FlagsLongEnum), ptwo = default(FlagsLongEnum), pthree = default(FlagsLongEnum);

            for (var i = 0; i < runs; i++)
            {
                pone   = Enums.Parse <FlagsLongEnum>("one", true);
                ptwo   = Enums.Parse <FlagsLongEnum>("sEven, four", true);
                pthree = Enums.Parse <FlagsLongEnum>("nine, teN", true);
            }
            if (pone != FlagsLongEnum.One || (ptwo != (FlagsLongEnum.Seven | FlagsLongEnum.Four)) || pthree != (FlagsLongEnum.Nine | FlagsLongEnum.Ten))
            {
                throw new Exception($"Result '{pone}', '{ptwo}', '{pthree}' was not correct");
            }
        }
Example #4
0
        static void Parse(int runs)
        {
            FlagsLongEnum pone = default(FlagsLongEnum), ptwo = default(FlagsLongEnum), pthree = default(FlagsLongEnum);

            for (var i = 0; i < runs; i++)
            {
                pone   = Enums.Parse <FlagsLongEnum>("One");
                ptwo   = Enums.Parse <FlagsLongEnum>("Seven, Four");
                pthree = Enums.Parse <FlagsLongEnum>("Nine, Ten");
            }
            if (pone != FlagsLongEnum.One || (ptwo != (FlagsLongEnum.Seven | FlagsLongEnum.Four)) || pthree != (FlagsLongEnum.Nine | FlagsLongEnum.Ten))
            {
                throw new Exception($"Result '{pone}', '{ptwo}', '{pthree}' was not correct");
            }
        }
        public void TestFlagsAsString()
        {
            FlagsLongEnum flagVal = FlagsLongEnum.Eight | FlagsLongEnum.Five;

            flagVal.AsString().ShouldBeEquivalentTo(flagVal.ToString());
        }