public static void CreateManualTest(int caseListLength) { var caseList = MakeDBValueCaseList(caseListLength); IDBItemSettingDesc result = null; var errorOccured = false; try { result = DBItemSettingDescFactory.CreateManual(caseList); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーが発生しないこと Assert.IsFalse(errorOccured); // 選択肢が意図した数であること var answerResultLength = caseListLength != -1 ? caseListLength : 0; Assert.AreEqual(result.GetAllSpecialCase().Count, answerResultLength); }
public static void CreateLoadFileTest(int caseListLength, bool isError) { var caseList = MakeDBValueCaseList(caseListLength); IDBItemSettingDesc result = null; var errorOccured = false; try { result = DBItemSettingDescFactory.CreateLoadFile(caseList); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーフラグが一致すること Assert.AreEqual(errorOccured, isError); if (errorOccured) { return; } // 選択肢の要素数が1であること Assert.AreEqual(result.GetAllSpecialCase().Count, 1); }
public static void Equals(string settingDescCode, bool answer) { var instance = new DBItemSettingDescNormal(); var changedPropertyList = new List <string>(); instance.PropertyChanged += (sender, args) => { changedPropertyList.Add(args.PropertyName); }; IDBItemSettingDesc desc = null; switch (settingDescCode) { case nameof(DBItemSettingDescLoadFile): desc = new DBItemSettingDescLoadFile(); break; case nameof(DBItemSettingDescDatabase): desc = new DBItemSettingDescDatabase(); break; case nameof(DBItemSettingDescManual): desc = new DBItemSettingDescManual(); break; case null: break; default: desc = new DBItemSettingDescNormal(); break; } bool result = false; var errorOccured = false; try { result = instance.Equals(desc); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーが発生しないこと Assert.IsFalse(errorOccured); // 結果が意図した値と一致すること Assert.AreEqual(result, answer); // プロパティ変更通知が発火していないこと Assert.AreEqual(changedPropertyList.Count, 0); }
public static void CreateTest(DBItemSpecialSettingType type, int caseListLength, bool isError) { var caseList = MakeDBValueCaseList(caseListLength); IDBItemSettingDesc result = null; var errorOccured = false; try { result = DBItemSettingDescFactory.Create(type, caseList); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーフラグが一致すること Assert.AreEqual(errorOccured, isError); if (errorOccured) { return; } // 設定種別に応じた型が取得できていること if (type == DBItemSpecialSettingType.Normal) { Assert.IsTrue(result is DBItemSettingDescNormal); } else if (type == DBItemSpecialSettingType.LoadFile) { Assert.IsTrue(result is DBItemSettingDescLoadFile); } else if (type == DBItemSpecialSettingType.ReferDatabase) { Assert.IsTrue(result is DBItemSettingDescDatabase); } else if (type == DBItemSpecialSettingType.Manual) { Assert.IsTrue(result is DBItemSettingDescManual); } else { Assert.Fail(); } }
/// <summary> /// 値を比較する。 /// </summary> /// <param name="other">比較対象</param> /// <returns>一致する場合、true</returns> public override bool Equals(IDBItemSettingDesc other) { if (ReferenceEquals(null, this)) { return(false); } if (ReferenceEquals(this, other)) { return(true); } if (!(other is DBItemSettingDescManual casted)) { return(false); } return(Equals(casted)); }
public static void CreateReferDatabaseTest(int caseListLength) { var caseList = MakeDBValueCaseList(caseListLength); IDBItemSettingDesc result = null; var errorOccured = false; try { result = DBItemSettingDescFactory.CreateReferDatabase(caseList); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーが発生しないこと Assert.IsFalse(errorOccured); // 選択肢の数が0であること Assert.AreEqual(result.GetAllSpecialCase().Count, 0); }
public static void Equals(string settingDescCode, bool answer) { var instance = new DBItemSettingDescDatabase { DatabaseReferKind = DBReferType.Changeable, DatabaseDbTypeId = 3, DatabaseUseAdditionalItemsFlag = false, }; var changedPropertyList = new List <string>(); instance.PropertyChanged += (sender, args) => { changedPropertyList.Add(args.PropertyName); }; IDBItemSettingDesc desc = null; switch (settingDescCode) { case nameof(DBItemSettingDescNormal): desc = new DBItemSettingDescNormal(); break; case nameof(DBItemSettingDescLoadFile): desc = new DBItemSettingDescLoadFile(); break; case nameof(DBItemSettingDescManual): desc = new DBItemSettingDescManual(); break; case null: break; default: var settings = settingDescCode.Split('_'); var dbDesc = new DBItemSettingDescDatabase(); switch (settings[1]) { case nameof(DBReferType.Changeable): dbDesc.DatabaseReferKind = DBReferType.Changeable; break; case nameof(DBReferType.User): dbDesc.DatabaseReferKind = DBReferType.User; break; case nameof(DBReferType.System): dbDesc.DatabaseReferKind = DBReferType.System; break; default: Assert.Fail(); break; } dbDesc.DatabaseDbTypeId = int.Parse(settings[2]); dbDesc.DatabaseUseAdditionalItemsFlag = bool.Parse(settings[3]); desc = dbDesc; break; } bool result = false; var errorOccured = false; try { result = instance.Equals(desc); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーが発生しないこと Assert.IsFalse(errorOccured); // 結果が意図した値と一致すること Assert.AreEqual(result, answer); // プロパティ変更通知が発火していないこと Assert.AreEqual(changedPropertyList.Count, 0); }
public static void Equals(string settingDescCode, bool answer) { var instance = new DBItemSettingDescManual(); instance.AddSpecialCase(new DatabaseValueCase(2, "sentence")); instance.AddSpecialCase(new DatabaseValueCase(4, "wolf")); var changedPropertyList = new List <string>(); instance.PropertyChanged += (sender, args) => { changedPropertyList.Add(args.PropertyName); }; IDBItemSettingDesc desc = null; switch (settingDescCode) { case nameof(DBItemSettingDescNormal): desc = new DBItemSettingDescNormal(); break; case nameof(DBItemSettingDescLoadFile): desc = new DBItemSettingDescLoadFile(); break; case nameof(DBItemSettingDescDatabase): desc = new DBItemSettingDescDatabase(); break; case null: break; default: var settings = settingDescCode.Split('_'); var maDesc = new DBItemSettingDescManual(); var argDescsCode = settings[1].Split(','); foreach (var argDescs in argDescsCode) { var argDescSettings = argDescs.Split('-'); maDesc.AddSpecialCase(new DatabaseValueCase(int.Parse(argDescSettings[0]), argDescSettings[1])); } desc = maDesc; break; } bool result = false; var errorOccured = false; try { result = instance.Equals(desc); } catch (Exception ex) { logger.Exception(ex); errorOccured = true; } // エラーが発生しないこと Assert.IsFalse(errorOccured); // 結果が意図した値と一致すること Assert.AreEqual(result, answer); // プロパティ変更通知が発火していないこと Assert.AreEqual(changedPropertyList.Count, 0); }