CollectionsKt.windowed throws IllegalArgumentException
This commit is contained in:
@@ -140,6 +140,11 @@ abstract class OrderedIterableTests<T : Iterable<String>>(createFrom: (Array<out
|
||||
data.toList().let { expectedSingleChunk ->
|
||||
assertEquals(expectedSingleChunk, data.chunked(size).single())
|
||||
assertEquals(expectedSingleChunk, data.chunked(size + 3).single())
|
||||
assertEquals(expectedSingleChunk, data.chunked(Int.MAX_VALUE).single())
|
||||
}
|
||||
|
||||
createFrom("a", "b").let { iterable ->
|
||||
assertEquals(iterable.toList(), iterable.chunked(Int.MAX_VALUE).single())
|
||||
}
|
||||
|
||||
assertTrue(empty.chunked(3).isEmpty())
|
||||
|
||||
@@ -230,6 +230,11 @@ public class SequenceTest {
|
||||
seq.toList().let { expectedSingleChunk ->
|
||||
assertEquals(expectedSingleChunk, seq.chunked(size).single())
|
||||
assertEquals(expectedSingleChunk, seq.chunked(size + 3).single())
|
||||
assertEquals(expectedSingleChunk, seq.chunked(Int.MAX_VALUE).single())
|
||||
}
|
||||
|
||||
infiniteSeq.take(2).let { seq2 ->
|
||||
assertEquals(seq2.toList(), seq2.chunked(Int.MAX_VALUE).single())
|
||||
}
|
||||
|
||||
assertTrue(emptySequence<String>().chunked(3).none())
|
||||
@@ -251,6 +256,16 @@ public class SequenceTest {
|
||||
assertEquals((startElement until startElement + 5).toList(), window)
|
||||
}
|
||||
|
||||
infiniteSeq.take(3500).windowed(2000, 1000, partialWindows = true).forEachIndexed { windowIndex, window ->
|
||||
val startElement = windowIndex * 1000
|
||||
val elementCount = when (windowIndex) {
|
||||
3 -> 500
|
||||
2 -> 1500
|
||||
else -> 2000
|
||||
}
|
||||
assertEquals((startElement until startElement + elementCount).toList(), window)
|
||||
}
|
||||
|
||||
val size = 7
|
||||
val seq = infiniteSeq.take(7)
|
||||
|
||||
|
||||
@@ -1068,6 +1068,11 @@ class StringTest {
|
||||
data.toString().let { expectedSingleChunk ->
|
||||
assertEquals(expectedSingleChunk, data.chunked(size).single())
|
||||
assertEquals(expectedSingleChunk, data.chunked(size + 3).single())
|
||||
assertEquals(expectedSingleChunk, data.chunked(Int.MAX_VALUE).single())
|
||||
}
|
||||
|
||||
arg1("ab").let {
|
||||
assertEquals(it.toString(), it.chunked(Int.MAX_VALUE).single())
|
||||
}
|
||||
|
||||
assertTrue(arg1("").chunked(3).isEmpty())
|
||||
|
||||
Reference in New Issue
Block a user