public static void CannotPassingFlagsTest() { var setValue = new TileCannotPassingFlags(0x02); var instance = new TilePathSettingAllow(setValue); var changedPropertyList = new List <string>(); instance.PropertyChanged += (sender, args) => { changedPropertyList.Add(args.PropertyName); }; TileCannotPassingFlags result = null; var errorOccured = false; try { result = instance.CannotPassingFlags; } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーが発生しないこと Assert.IsFalse(errorOccured); // 結果が意図した値であること Assert.AreEqual(result, setValue); // プロパティ変更通知が発火していないこと Assert.AreEqual(changedPropertyList.Count, 0); }
public static void ConstructorTest(int code, bool isError, bool down, bool left, bool right, bool up) { TileCannotPassingFlags instance = null; var errorOccured = false; try { instance = new TileCannotPassingFlags(code); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーフラグが一致すること Assert.AreEqual(errorOccured, isError); if (errorOccured) { return; } // 各プロパティの値が意図した値であること Assert.AreEqual(instance.Down, down); Assert.AreEqual(instance.Left, left); Assert.AreEqual(instance.Right, right); Assert.AreEqual(instance.Up, up); }
public static void EqualsTest(int targetCode, int otherCode, bool answer) { var target = new TileCannotPassingFlags(targetCode); var other = new TileCannotPassingFlags(otherCode); var result = false; var errorOccured = false; try { result = target.Equals(other); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーが発生しないこと Assert.IsFalse(errorOccured); // 結果が取得した値と一致すること Assert.AreEqual(result, answer); }
public static void SerializeTest() { var target = new TileCannotPassingFlags { Down = true, }; var clone = DeepCloner.DeepClone(target); Assert.IsTrue(clone.Equals(target)); }
public static void ChangePathPermissionDependentTest(TileCannotPassingFlags flags, bool isError) { var instance = new TilePathSetting(); var changedPropertyList = new List <string>(); instance.PropertyChanged += (sender, args) => { changedPropertyList.Add(args.PropertyName); }; var errorOccured = false; try { instance.ChangePathPermissionDependent(flags); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーフラグが一致すること Assert.AreEqual(errorOccured, isError); if (!errorOccured) { // 通行許可設定が"下レイヤーに依存"になっていること Assert.AreEqual(instance.PathPermission, TilePathPermission.Dependent); // 通行方向設定がセットした値と一致すること(設定を指定しなかった場合デフォルト値が設定されていること) Assert.IsTrue(instance.CannotPassingFlags.Equals(flags ?? new TileCannotPassingFlags())); } // 意図したとおりプロパティ変更通知が発火していること if (errorOccured) { Assert.AreEqual(changedPropertyList.Count, 0); } else { Assert.AreEqual(changedPropertyList.Count, 5); Assert.IsTrue(changedPropertyList[0].Equals(nameof(TilePathSetting.PathPermission))); Assert.IsTrue(changedPropertyList[1].Equals(nameof(TilePathSetting.ImpassableFlags))); Assert.IsTrue(changedPropertyList[2].Equals(nameof(TilePathSetting.PathOption))); Assert.IsTrue(changedPropertyList[3].Equals(nameof(TilePathSetting.CannotPassingFlags))); Assert.IsTrue(changedPropertyList[4].Equals(nameof(TilePathSetting.IsCounter))); } }
public static void ConstructorTestB(TileCannotPassingFlags cannotPassingFlags, bool isError) { var errorOccured = false; try { var _ = new TilePathSettingAllow(cannotPassingFlags); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーフラグが一致すること Assert.AreEqual(errorOccured, isError); }
public static void UpTest(bool up, int initCode, bool isError) { var instance = new TileCannotPassingFlags(initCode); var changedPropertyList = new List <string>(); instance.PropertyChanged += (sender, args) => { changedPropertyList.Add(args.PropertyName); }; var errorOccured = false; try { instance.Up = up; } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーフラグが一致すること Assert.AreEqual(errorOccured, isError); if (errorOccured) { var setValue = instance.Up; // セットした値と取得した値が一致すること Assert.IsTrue(setValue.Equals(setValue)); } // 意図したとおりプロパティ変更通知が発火していること if (errorOccured) { Assert.AreEqual(changedPropertyList.Count, 0); } else { Assert.AreEqual(changedPropertyList.Count, 1); Assert.IsTrue(changedPropertyList[0].Equals(nameof(TileCannotPassingFlags.Up))); } }