import org.junit.Assert.assertEquals import org.junit.Test import kotlin.math.min class ExampleUnitTest3 { private fun List.takeUntilItem(item: T): List = take(min(indexOf(item) + 1, size)) @Test fun asas1() { val list = listOf(1, 2, 3, 4, 5, 6) val item = 4 val result = list.takeUntilItem(item) val expectedResult = listOf(1, 2, 3, 4) assertEquals(expectedResult, result) } @Test fun asas2() { val list = listOf(1, 2, 3, 4, 5, 6) val item = 6 val result = list.takeUntilItem(item) val expectedResult = listOf(1, 2, 3, 4, 5, 6) assertEquals(expectedResult, result) } @Test fun asas3() { val list = listOf(1, 2, 3, 4, 5, 6) val item = 1 val result = list.takeUntilItem(item) val expectedResult = listOf(1) assertEquals(expectedResult, result) } @Test fun asas4() { val list = listOf(1, 2, 3, 4, 5, 6) val item = 99 val result = list.takeUntilItem(item) val expectedResult = emptyList() assertEquals(expectedResult, result) } }