diff --git a/FilterLists.sln.DotSettings b/FilterLists.sln.DotSettings index f027606b5..a6cf3a100 100644 --- a/FilterLists.sln.DotSettings +++ b/FilterLists.sln.DotSettings @@ -1,7 +1,4 @@ - + ExplicitlyExcluded True @@ -195,6 +192,10 @@ </Patterns> <Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /> <Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /> + True + True + True + True True True True diff --git a/tests/FilterLists.Services.Tests/Extensions/Collection/AddRangeShould.cs b/tests/FilterLists.Services.Tests/Extensions/Collection/AddRangeShould.cs index 8bdf93db4..59f294d45 100644 --- a/tests/FilterLists.Services.Tests/Extensions/Collection/AddRangeShould.cs +++ b/tests/FilterLists.Services.Tests/Extensions/Collection/AddRangeShould.cs @@ -26,5 +26,21 @@ public void AddListOfStrings() sut.AddRange(range); Assert.True(!range.Except(sut).Any()); } + + [Fact] + public void NotAddAnyItemsFromEmptyCollection() + { + range = new Collection(); + sut.AddRange(range); + Assert.Empty(sut); + } + + [Fact] + public void NotAddAnyItemsFromEmptyList() + { + range = new List(); + sut.AddRange(range); + Assert.Empty(sut); + } } } \ No newline at end of file diff --git a/tests/FilterLists.Services.Tests/Extensions/Task/TimeoutAfterShould.cs b/tests/FilterLists.Services.Tests/Extensions/Task/TimeoutAfterShould.cs new file mode 100644 index 000000000..d7129f70f --- /dev/null +++ b/tests/FilterLists.Services.Tests/Extensions/Task/TimeoutAfterShould.cs @@ -0,0 +1,29 @@ +using System; +using System.Threading; +using FilterLists.Services.Extensions; +using Xunit; + +namespace FilterLists.Services.Tests.Extensions.Task +{ + public class TimeoutAfterShould + { + private readonly System.Threading.Tasks.Task sut = + System.Threading.Tasks.Task.Run(() => { Thread.Sleep(1000); }); + + [Fact] + public async void CompleteSuccessfullyIfTimeToCompleteIsLessThanTimeout() + { + var fifteenSecondTimeout = new TimeSpan(0, 0, 15); + await sut.TimeoutAfter(fifteenSecondTimeout); + Assert.True(sut.IsCompletedSuccessfully); + } + + [Fact] + public async void ThrowTimeoutExceptionIfTimeToCompleteIsGreaterThanTimeout() + { + var oneTickTimeout = new TimeSpan(1); + await Assert.ThrowsAsync(() => + sut.TimeoutAfter(oneTickTimeout)); + } + } +} \ No newline at end of file