From e6b2aabc2dcd9ac4851d1ee3c949da200b74c961 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Wed, 8 Jan 2025 13:41:53 -0500 Subject: [PATCH] Write GetName/SetName tests --- SabreTools.DatItems.Test/DatItemTests.cs | 70 +++++++++++++++++++++++- SabreTools.DatItems/DatItem.cs | 4 +- 2 files changed, 70 insertions(+), 4 deletions(-) diff --git a/SabreTools.DatItems.Test/DatItemTests.cs b/SabreTools.DatItems.Test/DatItemTests.cs index 5c92f096..efc0b703 100644 --- a/SabreTools.DatItems.Test/DatItemTests.cs +++ b/SabreTools.DatItems.Test/DatItemTests.cs @@ -820,13 +820,79 @@ namespace SabreTools.DatItems.Test #region GetName - // TODO: Implement GetName tests + [Fact] + public void GetName_NoNameKey_Null() + { + DatItem item = new TestDatItem(nameKey: null); + item.SetFieldValue(TestDatItemModel.NameKey, "name"); + + string? actual = item.GetName(); + Assert.Null(actual); + } + + [Fact] + public void GetName_EmptyNameKey_Null() + { + DatItem item = new TestDatItem(nameKey: string.Empty); + item.SetFieldValue(TestDatItemModel.NameKey, "name"); + + string? actual = item.GetName(); + Assert.Null(actual); + } + + [Fact] + public void GetName_NameKeyNotExists_Null() + { + DatItem item = new TestDatItem(nameKey: "INVALID"); + item.SetFieldValue(TestDatItemModel.NameKey, "name"); + + string? actual = item.GetName(); + Assert.Null(actual); + } + + [Fact] + public void GetName_NameKeyExists_Filled() + { + DatItem item = new TestDatItem(nameKey: TestDatItemModel.NameKey); + item.SetFieldValue(TestDatItemModel.NameKey, "name"); + + string? actual = item.GetName(); + Assert.Equal("name", actual); + } #endregion #region SetName - // TODO: Implement SetName tests + [Fact] + public void SetName_NoNameKey_Null() + { + DatItem item = new TestDatItem(nameKey: null); + item.SetName("name"); + + string? actual = item.GetName(); + Assert.Null(actual); + } + + [Fact] + public void SetName_EmptyNameKey_Null() + { + DatItem item = new TestDatItem(nameKey: string.Empty); + item.SetName("name"); + + string? actual = item.GetName(); + Assert.Null(actual); + } + + [Fact] + public void SetName_NameKeyNonEmpty_Filled() + { + DatItem item = new TestDatItem(nameKey: TestDatItemModel.NameKey); + item.SetName("name"); + + string? actual = item.GetName(); + Assert.Equal("name", actual); + } #endregion diff --git a/SabreTools.DatItems/DatItem.cs b/SabreTools.DatItems/DatItem.cs index af67d703..54b9b414 100644 --- a/SabreTools.DatItems/DatItem.cs +++ b/SabreTools.DatItems/DatItem.cs @@ -518,7 +518,7 @@ namespace SabreTools.DatItems /// public override string? GetName() { - if (NameKey != null) + if (!string.IsNullOrEmpty(NameKey)) return GetStringFieldValue(NameKey); return null; @@ -527,7 +527,7 @@ namespace SabreTools.DatItems /// public override void SetName(string? name) { - if (NameKey != null) + if (!string.IsNullOrEmpty(NameKey)) SetFieldValue(NameKey, name); }