Add tests on types of items in java chain operations
This commit is contained in:
committed by
Yan Zhulanow
parent
16768bd9e3
commit
6b6ccc45f0
@@ -0,0 +1,10 @@
|
|||||||
|
import java.util.stream.Stream
|
||||||
|
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
<caret> Stream.of(1, 2, 3)
|
||||||
|
.mapToInt { it }
|
||||||
|
.mapToObj({ it.toString() })
|
||||||
|
.mapToLong { it.toLong() }
|
||||||
|
.mapToDouble { it / 10.0 }
|
||||||
|
.count()
|
||||||
|
}
|
||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
import java.util.stream.LongStream
|
||||||
|
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
<caret> LongStream.of(1, 2, 3).mapToInt { it.toInt() }.count()
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
import java.util.stream.DoubleStream
|
||||||
|
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
<caret> DoubleStream.of(2.3, 3.4, 5.6).boxed().count()
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
import java.util.stream.LongStream
|
||||||
|
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
<caret> LongStream.of(10, 200, 3000).mapToDouble { it * 1000.1 }.count()
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
import java.util.stream.Stream
|
||||||
|
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
<caret> Stream.of(Any()).map({ 5 }).count()
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
import java.util.stream.Stream
|
||||||
|
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
<caret> Stream.of(1,2,3).count()
|
||||||
|
}
|
||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
import java.util.stream.LongStream
|
||||||
|
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
<caret> LongStream.of(1, 2, 3).flatMap { LongStream.range(0, 10) }.count()
|
||||||
|
}
|
||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
import java.util.stream.IntStream
|
||||||
|
|
||||||
|
fun main(args: Array<String>) {
|
||||||
|
<caret> IntStream.of(1, 3, 4).count()
|
||||||
|
}
|
||||||
@@ -1,12 +1,27 @@
|
|||||||
package com.intellij.debugger.streams.kotlin.psi.java
|
package com.intellij.debugger.streams.kotlin.psi.java
|
||||||
|
|
||||||
|
import com.intellij.debugger.streams.kotlin.lib.JavaStandardLibrarySupportProvider
|
||||||
import com.intellij.debugger.streams.kotlin.psi.TypedChainTestCase
|
import com.intellij.debugger.streams.kotlin.psi.TypedChainTestCase
|
||||||
import com.intellij.debugger.streams.lib.impl.StandardLibrarySupportProvider
|
import com.intellij.debugger.streams.kotlin.trace.dsl.KotlinTypes.DOUBLE
|
||||||
|
import com.intellij.debugger.streams.kotlin.trace.dsl.KotlinTypes.INT
|
||||||
|
import com.intellij.debugger.streams.kotlin.trace.dsl.KotlinTypes.LONG
|
||||||
|
import com.intellij.debugger.streams.kotlin.trace.dsl.KotlinTypes.NULLABLE_ANY
|
||||||
import com.intellij.debugger.streams.wrapper.StreamChainBuilder
|
import com.intellij.debugger.streams.wrapper.StreamChainBuilder
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Vitaliy.Bibaev
|
* @author Vitaliy.Bibaev
|
||||||
*/
|
*/
|
||||||
class TypedJavaChainTest : TypedChainTestCase("streams/positive/types") {
|
class TypedJavaChainTest : TypedChainTestCase("streams/positive/types") {
|
||||||
override val kotlinChainBuilder: StreamChainBuilder = StandardLibrarySupportProvider().chainBuilder
|
override val kotlinChainBuilder: StreamChainBuilder = JavaStandardLibrarySupportProvider().chainBuilder
|
||||||
|
|
||||||
|
fun testOneCall() = doTest(NULLABLE_ANY)
|
||||||
|
fun testMapToSame() = doTest(NULLABLE_ANY, NULLABLE_ANY)
|
||||||
|
fun testPrimitiveOneCall() = doTest(INT)
|
||||||
|
fun testPrimitiveMapToSame() = doTest(LONG, LONG)
|
||||||
|
|
||||||
|
fun testMapToPrimitive() = doTest(NULLABLE_ANY, INT)
|
||||||
|
fun testMapToObj() = doTest(DOUBLE, NULLABLE_ANY)
|
||||||
|
fun testMapPrimitiveToPrimitive() = doTest(LONG, DOUBLE)
|
||||||
|
|
||||||
|
fun testFewTransitions() = doTest(NULLABLE_ANY, INT, NULLABLE_ANY, LONG, DOUBLE)
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user