Exemple #1
0
        [TestCase(0x08_00, false)] // 該当なし(通行可)
        public static void CreateTestA(int code, bool isError)
        {
            var errorOccured = false;

            try
            {
                var _ = TilePathSettingFactory.Create(code);
            }
            catch (Exception ex)
            {
                logger.Exception(ex);
                errorOccured = true;
            }

            // エラーフラグが一致すること
            Assert.AreEqual(errorOccured, isError);
        }
Exemple #2
0
        public static void CreateTest2(int testCode, string description)
        {
            var(pathPermission, src, isError, resultType, resultFlagsCode) = MakeCreateTest2Args(testCode);

            ITilePathSetting result = null;

            var errorOccured = false;

            try
            {
                result = TilePathSettingFactory.Create(pathPermission, src);
            }
            catch (Exception ex)
            {
                logger.Exception(ex);
                errorOccured = true;
            }

            // エラーフラグが一致すること
            Assert.AreEqual(errorOccured, isError);

            if (errorOccured)
            {
                return;
            }

            // 結果が意図した値であること
            Assert.AreEqual(result.GetType(), resultType);

            if (result.GetType() != typeof(TilePathSettingPartialDeny) &&
                result.GetType() != typeof(TilePathSettingDeny))
            {
                // CannotPassingFlags が意図した値であること
                Assert.AreEqual(result.CannotPassingFlags.ToCode(), resultFlagsCode);
            }

            if (result.GetType() == typeof(TilePathSettingPartialDeny))
            {
                // ImpassableFlags が意図した値であること
                Assert.AreEqual(result.ImpassableFlags.ToCode(), resultFlagsCode);
            }
        }