Open
Description
Starting with .NET 8, Eumerable.Range
returns an instance of a private RangeIterator
that implements IList<T>
(see also dotnet/runtime#88249). A lot of the unit tests potentially went with the assumption that Eumerable.Range
returns a pure sequence. There are some operators in MoreLINQ that are optimised for sources that are collections and/or lists so tests using Eumerable.Range
may be testing those optimised paths rather than the actual intended path iterating the source as an IEnumerable<>
. Those tests need to be revised to avoid Enumerable.Range
altogether.
Potential candidates that need revision:
-
AggregateRightTest
-
AggregateTest
-
AppendTest
-
AssertCountTest
-
AtLeastTest
-
AtMostTest
-
BacksertTest
-
ChooseTest
-
CompareCountTest
-
ConsumeTest
-
CountBetweenTest
-
CountByTest
-
CountDownTest
-
ExactlyTest
-
FlattenTest
-
FoldTest
-
GroupAdjacentTest
-
InsertTest
-
MemoizeTest
-
MoveTest
-
PadStartTest
-
PairwiseTest
-
PartitionTest
-
PermutationsTest
-
PrependTest
-
PreScanTest
-
RandomSubsetTest
-
RepeatTest
-
ScanRightTest
-
ScanTest
-
SequenceTest
-
ShuffleTest
-
SkipLastTest
-
SkipUntilTest
-
SubsetTest
-
TakeUntilTest
-
TestingSequenceTest
-
ToDataTableTest
-
TraverseTest
-
TrySingleTest
-
WindowLeftTest
-
WindowRightTest