1
+ package listOfLists
2
+
3
+ import org.junit.jupiter.api.Assertions.assertEquals
4
+ import org.junit.jupiter.api.Test
5
+ import kotlin.test.assertTrue
6
+
7
+ class ListOfListsUnitTest {
8
+
9
+ @Test
10
+ fun `Creates an immutable list of immutable lists using listOf()` () {
11
+ val listOfLists = listOf (listOf (1 , 2 ), listOf (3 , 4 ), listOf (5 , 6 ))
12
+
13
+ assertEquals(3 , listOfLists.size)
14
+ assertEquals(listOf (1 , 2 ), listOfLists[0 ])
15
+ assertEquals(listOf (3 , 4 ), listOfLists[1 ])
16
+ assertEquals(listOf (5 , 6 ), listOfLists[2 ])
17
+ }
18
+
19
+ @Test
20
+ fun `Creates an immutable list of mutable lists using List constructor` () {
21
+ val listOfLists = List (3 ) { MutableList <Int >(2 ) {0 } }
22
+
23
+ assertEquals(3 , listOfLists.size)
24
+ assertEquals(listOf (0 , 0 ), listOfLists[0 ])
25
+ assertEquals(listOf (0 , 0 ), listOfLists[1 ])
26
+ assertEquals(listOf (0 , 0 ), listOfLists[2 ])
27
+ }
28
+
29
+ @Test
30
+ fun `Creates an immutable list of immutable lists using map method` () {
31
+ val listOfLists = (0 .. 2 ).map { _ -> (0 .. 1 ).map { 0 } }
32
+
33
+ assertEquals(3 , listOfLists.size)
34
+ assertEquals(listOf (0 , 0 ), listOfLists[0 ])
35
+ assertEquals(listOf (0 , 0 ), listOfLists[1 ])
36
+ assertEquals(listOf (0 , 0 ), listOfLists[2 ])
37
+ }
38
+
39
+ @Test
40
+ fun `Creates an immutable list of mutable lists using map method` () {
41
+ val listOfMutableLists = (0 .. 2 ).map { mutableListOf<Int >() }
42
+
43
+ assertEquals(3 , listOfMutableLists.size)
44
+ assertTrue(listOfMutableLists.all { it.isEmpty() })
45
+ }
46
+ }
0 commit comments