Added a sliding window extension for IEnumerable
This commit is contained in:
@@ -102,4 +102,44 @@ public class EnumerableExtensionsTest
|
||||
|
||||
Assert.Equal([[1, 2], [1, 3], [2, 1], [2, 3], [3, 1], [3, 2]], actual);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SlidingWindowOver_none_1_equals_none()
|
||||
{
|
||||
int[] data = [];
|
||||
|
||||
var actual = data.SlidingWindow(1).ToArray();
|
||||
|
||||
Assert.Equal([], actual);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SlidingWindowOver_1_1_equals_1()
|
||||
{
|
||||
int[] data = [1];
|
||||
|
||||
var actual = data.SlidingWindow(1).ToArray();
|
||||
|
||||
Assert.Equal([[1]], actual);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SlidingWindowOver_1234_2_equals_1_12_23_34()
|
||||
{
|
||||
int[] data = [1, 2, 3, 4];
|
||||
|
||||
var actual = data.SlidingWindow(2).ToArray();
|
||||
|
||||
Assert.Equal([[1], [1, 2], [2, 3], [3, 4]], actual);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SlidingWindowOver_1234_3_equals_1_12_123_234()
|
||||
{
|
||||
int[] data = [1, 2, 3, 4];
|
||||
|
||||
var actual = data.SlidingWindow(3).ToArray();
|
||||
|
||||
Assert.Equal([[1], [1, 2], [1, 2, 3], [2, 3, 4]], actual);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user