diff --git a/Source/SuperLinq/Slice.cs b/Source/SuperLinq/Slice.cs
index 5d9e49ee..7128e71c 100644
--- a/Source/SuperLinq/Slice.cs
+++ b/Source/SuperLinq/Slice.cs
@@ -28,7 +28,6 @@ public static partial class SuperEnumerable
/// return all elements up to that point. There is no guarantee that the resulting sequence will contain the
/// number of elements requested - it may have anywhere from 0 to .
///
- [Obsolete("Slice has been replaced by Take(Range).")]
public static IEnumerable Slice(this IEnumerable source, int startIndex, int count)
{
return source.Take(startIndex..(startIndex + count));
diff --git a/Tests/SuperLinq.Test/SliceTest.cs b/Tests/SuperLinq.Test/SliceTest.cs
new file mode 100644
index 00000000..fffd7b3b
--- /dev/null
+++ b/Tests/SuperLinq.Test/SliceTest.cs
@@ -0,0 +1,76 @@
+namespace Test;
+
+///
+/// Verify the behavior of the Slice operator
+///
+public class SliceTests
+{
+ ///
+ /// Verify that Slice evaluates in a lazy manner.
+ ///
+ [Fact]
+ public void TestSliceIsLazy()
+ {
+ _ = new BreakingSequence().Slice(10, 10);
+ }
+
+ public static IEnumerable