From bb1a91a7a36447667574720bd96ee409b2054916 Mon Sep 17 00:00:00 2001 From: "Collin M. Barrett" Date: Sat, 13 Oct 2018 10:49:59 -0500 Subject: [PATCH] add more CollectionExtension tests --- .../Extensions/AddIfNotNullOrEmptyShould.cs | 40 ----------- .../Extensions/CollectionExtensionShould.cs | 66 +++++++++++++++++++ 2 files changed, 66 insertions(+), 40 deletions(-) delete mode 100644 tests/FilterLists.Services.Tests/Extensions/AddIfNotNullOrEmptyShould.cs create mode 100644 tests/FilterLists.Services.Tests/Extensions/CollectionExtensionShould.cs diff --git a/tests/FilterLists.Services.Tests/Extensions/AddIfNotNullOrEmptyShould.cs b/tests/FilterLists.Services.Tests/Extensions/AddIfNotNullOrEmptyShould.cs deleted file mode 100644 index b3a2fae3f..000000000 --- a/tests/FilterLists.Services.Tests/Extensions/AddIfNotNullOrEmptyShould.cs +++ /dev/null @@ -1,40 +0,0 @@ -using System.Collections.Generic; -using System.Collections.ObjectModel; -using FilterLists.Services.Extensions; -using Xunit; - -namespace FilterLists.Services.Tests.Extensions -{ - public class AddIfNotNullOrEmptyShould - { - public AddIfNotNullOrEmptyShould() => - sut = new Collection(); - - private readonly ICollection sut; - private string item; - - [Fact] - public void AddIfNotNullOrEmpty() - { - item = "item"; - sut.AddIfNotNullOrEmpty(item); - Assert.Contains(item, sut); - } - - [Fact] - public void NotAddIfEmpty() - { - item = ""; - sut.AddIfNotNullOrEmpty(item); - Assert.DoesNotContain(item, sut); - } - - [Fact] - public void NotAddIfNull() - { - item = null; - sut.AddIfNotNullOrEmpty(item); - Assert.DoesNotContain(item, sut); - } - } -} \ No newline at end of file diff --git a/tests/FilterLists.Services.Tests/Extensions/CollectionExtensionShould.cs b/tests/FilterLists.Services.Tests/Extensions/CollectionExtensionShould.cs new file mode 100644 index 000000000..0b0befb8d --- /dev/null +++ b/tests/FilterLists.Services.Tests/Extensions/CollectionExtensionShould.cs @@ -0,0 +1,66 @@ +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using FilterLists.Services.Extensions; +using Xunit; + +namespace FilterLists.Services.Tests.Extensions +{ + public abstract class CollectionExtensionShould + { + protected readonly ICollection Sut; + + protected CollectionExtensionShould() => + Sut = new Collection(); + } + + public class AddIfNotNullOrEmptyShould : CollectionExtensionShould + { + private string item; + + [Fact] + public void AddIfNotNullOrEmpty() + { + item = "item"; + Sut.AddIfNotNullOrEmpty(item); + Assert.Contains(item, Sut); + } + + [Fact] + public void NotAddIfEmpty() + { + item = ""; + Sut.AddIfNotNullOrEmpty(item); + Assert.DoesNotContain(item, Sut); + } + + [Fact] + public void NotAddIfNull() + { + item = null; + Sut.AddIfNotNullOrEmpty(item); + Assert.DoesNotContain(item, Sut); + } + } + + public class AddRangeShould : CollectionExtensionShould + { + private IEnumerable range; + + [Fact] + public void AddCollectionOfStrings() + { + range = new Collection {"item1", "item2"}; + Sut.AddRange(range); + Assert.True(!range.Except(Sut).Any()); + } + + [Fact] + public void AddListOfStrings() + { + range = new List {"item1", "item2"}; + Sut.AddRange(range); + Assert.True(!range.Except(Sut).Any()); + } + } +} \ No newline at end of file