示例#1
0
        public void Create_Test()
        {
            var obj1 = _lamed.Types.Object.Create <Types_Enum_Data>();
            var obj2 = new Types_Enum_Data();

            Assert.Equal(obj1, obj2);
            Assert.Equal(true, _lamed.Types.Object.Compare(obj1, obj2));
        }
示例#2
0
        public void Flags_Test()
        {
            // Flags tests: Spirit & Soul
            var Spirit_Soul = (Types_Enum_Data.Spirit | Types_Enum_Data.Soul);

            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul, Types_Enum_Data.Spirit));
            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul, Types_Enum_Data.Soul));
            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul, true, Types_Enum_Data.Spirit, Types_Enum_Data.Soul));
            Assert.Equal(false, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul, true, Types_Enum_Data.Spirit, Types_Enum_Data.Soul, Types_Enum_Data.Body));

            // Flags tests: Spirit & Soul & Body
            Types_Enum_Data Spirit_Soul_Body  = Spirit_Soul | Types_Enum_Data.Body;
            Types_Enum_Data Spirit_Soul_Body2 = _lamed.Types.Enum.Flag_Add(Spirit_Soul, Types_Enum_Data.Body);

            Spirit_Soul_Body2 = _lamed.Types.Enum.Flag_Add(Spirit_Soul_Body2, Types_Enum_Data.Body);
            Assert.Equal(Spirit_Soul_Body, Spirit_Soul_Body2);

            var enum1 = Types_Enum_Data2.Test1;
            var enum2 = _lamed.Types.Enum.Flag_Add(enum1, Types_Enum_Data2.Test_Value);

            Assert.NotEqual(enum1, enum2);
            enum2 = _lamed.Types.Enum.Flag_Remove(enum2, Types_Enum_Data2.Test_Value);
            Assert.Equal(enum1, enum2);

            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul_Body, Types_Enum_Data.Spirit));
            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul_Body, Types_Enum_Data.Soul));
            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul_Body, Types_Enum_Data.Body));
            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul_Body, false, Types_Enum_Data.Spirit, Types_Enum_Data.Soul, Types_Enum_Data.Body));

            // Flags remove
            Spirit_Soul_Body = _lamed.Types.Enum.Flag_Remove(Spirit_Soul_Body, Types_Enum_Data.Body);
            Assert.Equal(false, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul_Body, Types_Enum_Data.Body));
            Spirit_Soul_Body = _lamed.Types.Enum.Flag_Add(Spirit_Soul_Body, Types_Enum_Data.Body);
            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(Spirit_Soul_Body, Types_Enum_Data.Body));

            // Flags all test
            var allEnums = Types_Enum_Data.Spirit | Types_Enum_Data.Soul | Types_Enum_Data.Body | Types_Enum_Data.Marriage |
                           Types_Enum_Data.Family_Original | Types_Enum_Data.Family_Rejoined | Types_Enum_Data.Family_SingleParent;

            Assert.Equal(true, _lamed.Types.Enum.Flag_IsSet(allEnums, false, Types_Enum_Data.Spirit, Types_Enum_Data.Soul, Types_Enum_Data.Body, Types_Enum_Data.Marriage,
                                                            Types_Enum_Data.Family_Original, Types_Enum_Data.Family_Rejoined, Types_Enum_Data.Family_SingleParent));

            // Flags list
            var allEnumsList = _lamed.Types.Enum.Flags <Types_Enum_Data>(allEnums).ToList();

            Assert.Equal(9, allEnumsList.Count());
            Assert.Equal(Types_Enum_Data.Spirit, allEnumsList[0]);
            Assert.Equal(Types_Enum_Data.Soul, allEnumsList[1]);
        }