Skip to content

Commit 722a917

Browse files
Improve Collections tests
1 parent 6564daa commit 722a917

File tree

1 file changed

+26
-6
lines changed

1 file changed

+26
-6
lines changed

kotlin-stdlib/common/test/kotlin/com/javiersc/kotlin/stdlib/CollectionsTest.kt

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,25 @@ import kotlin.test.Test
66
import kotlin.test.assertFailsWith
77
import kotlin.test.assertTrue
88

9-
class CollectionsTest {
9+
internal class CollectionsTest {
1010

1111
private val numbers: List<Int> = listOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
12-
private val chars: Iterable<Char> = listOf('A', 'B', 'C', 'D', 'E', 'F').asIterable()
13-
private val empty: List<String> = emptyList()
14-
private val emptyIterable: Iterable<String> = emptyList<String>().asIterable()
12+
private val numbersIterable: Iterable<Int> = IntRange(1, 10)
13+
private val chars: List<Char> = listOf('A', 'B', 'C', 'D', 'E', 'F')
14+
private val charsIterable: Iterable<Char> = CharRange('A', 'F')
15+
private val empty: List<Char> = emptyList()
16+
private val emptyIterable: Iterable<Char> = CharRange.EMPTY
1517

1618
@Test
1719
fun collection_second() {
1820
assertTrue { numbers.second() == 2 }
21+
assertTrue { numbersIterable.second() == 2 }
1922
assertTrue { numbers.secondOrNull() == 2 }
23+
assertTrue { numbersIterable.secondOrNull() == 2 }
2024

2125
assertTrue { chars.second() == 'B' }
22-
assertTrue { chars.secondOrNull() == 'B' }
26+
assertTrue { charsIterable.second() == 'B' }
27+
assertTrue { charsIterable.secondOrNull() == 'B' }
2328

2429
assertFailsWith<NoSuchElementException> { empty.second() }
2530
assertFailsWith<NoSuchElementException> { emptyIterable.second() }
@@ -31,10 +36,14 @@ class CollectionsTest {
3136
@Test
3237
fun collection_third() {
3338
assertTrue { numbers.third() == 3 }
39+
assertTrue { numbersIterable.third() == 3 }
3440
assertTrue { numbers.thirdOrNull() == 3 }
41+
assertTrue { numbersIterable.thirdOrNull() == 3 }
3542

3643
assertTrue { chars.third() == 'C' }
44+
assertTrue { charsIterable.third() == 'C' }
3745
assertTrue { chars.thirdOrNull() == 'C' }
46+
assertTrue { charsIterable.thirdOrNull() == 'C' }
3847

3948
assertFailsWith<NoSuchElementException> { empty.third() }
4049
assertFailsWith<NoSuchElementException> { emptyIterable.third() }
@@ -46,10 +55,13 @@ class CollectionsTest {
4655
@Test
4756
fun collection_forth() {
4857
assertTrue { numbers.forth() == 4 }
58+
assertTrue { numbersIterable.forth() == 4 }
4959
assertTrue { numbers.forthOrNull() == 4 }
60+
assertTrue { numbersIterable.forthOrNull() == 4 }
5061

5162
assertTrue { chars.forth() == 'D' }
52-
assertTrue { chars.forthOrNull() == 'D' }
63+
assertTrue { charsIterable.forth() == 'D' }
64+
assertTrue { charsIterable.forthOrNull() == 'D' }
5365

5466
assertFailsWith<NoSuchElementException> { empty.forth() }
5567
assertFailsWith<NoSuchElementException> { emptyIterable.forth() }
@@ -61,10 +73,14 @@ class CollectionsTest {
6173
@Test
6274
fun collection_fifth() {
6375
assertTrue { numbers.fifth() == 5 }
76+
assertTrue { numbersIterable.fifth() == 5 }
6477
assertTrue { numbers.fifthOrNull() == 5 }
78+
assertTrue { numbersIterable.fifthOrNull() == 5 }
6579

6680
assertTrue { chars.fifth() == 'E' }
81+
assertTrue { charsIterable.fifth() == 'E' }
6782
assertTrue { chars.fifthOrNull() == 'E' }
83+
assertTrue { charsIterable.fifthOrNull() == 'E' }
6884

6985
assertFailsWith<NoSuchElementException> { empty.fifth() }
7086
assertFailsWith<NoSuchElementException> { emptyIterable.fifth() }
@@ -76,10 +92,14 @@ class CollectionsTest {
7692
@Test
7793
fun collection_penultimate() {
7894
assertTrue { numbers.penultimate() == 9 }
95+
assertTrue { numbersIterable.penultimate() == 9 }
7996
assertTrue { numbers.penultimateOrNull() == 9 }
97+
assertTrue { numbersIterable.penultimateOrNull() == 9 }
8098

8199
assertTrue { chars.penultimate() == 'E' }
100+
assertTrue { charsIterable.penultimate() == 'E' }
82101
assertTrue { chars.penultimateOrNull() == 'E' }
102+
assertTrue { charsIterable.penultimateOrNull() == 'E' }
83103

84104
assertFailsWith<NoSuchElementException> { empty.penultimate() }
85105
assertFailsWith<NoSuchElementException> { emptyIterable.penultimate() }

0 commit comments

Comments
 (0)