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