Move coroutines to kotlin.coroutines package: tests

Introduce COMMON_COROUTINES_TEST directive.
Every test with this directive is run twice: one time with
language version 1.2 and kotlin.coroutines.experimental package
and the other time with language version 1.3 and kotlin.coroutines
package. Each run is a separate method: with suffixes _1_2 and _1_3
respectively.
However, since codegen of release coroutines is not supported in JS
backend, we generate only one method: with suffix _1_2.
 #KT-23362
This commit is contained in:
Ilmir Usmanov
2018-04-19 17:10:47 +03:00
parent 30ab1e2b35
commit f60787d57c
340 changed files with 9150 additions and 3046 deletions
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -NOTHING_TO_INLINE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -NOTHING_TO_INLINE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -NOTHING_TO_INLINE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -NOTHING_TO_INLINE -UNUSED_PARAMETER
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -NOTHING_TO_INLINE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -NOTHING_TO_INLINE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -NOTHING_TO_INLINE -UNUSED_PARAMETER
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER -NOTHING_TO_INLINE
// COMMON_COROUTINES_TEST
// SKIP_TXT
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
open class EmptyContinuation(override val context: CoroutineContext = EmptyCoroutineContext) : Continuation<Any?> {
companion object : EmptyContinuation()
@@ -1,7 +1,8 @@
// SKIP_TXT
// WITH_RUNTIME
// COMMON_COROUTINES_TEST
import kotlin.coroutines.experimental.*
import COROUTINES_PACKAGE.*
interface Job : CoroutineContext.Element {}
interface Deferred<out T> : Job {
@@ -1,8 +1,9 @@
// FILE: 1.kt
// COMMON_COROUTINES_TEST
fun test(<!UNUSED_PARAMETER!>c<!>: <!UNRESOLVED_REFERENCE!>Continuation<!><Unit>) {}
// FILE: 2.kt
import kotlin.coroutines.experimental.*
import COROUTINES_PACKAGE.*
fun test2(<!UNUSED_PARAMETER!>c<!>: Continuation<Unit>) {}
@@ -1,4 +1,4 @@
package
public fun test(/*0*/ c: [ERROR : Continuation<Unit>]<kotlin.Unit>): kotlin.Unit
public fun test2(/*0*/ c: kotlin.coroutines.experimental.Continuation<kotlin.Unit>): kotlin.Unit
public fun test2(/*0*/ c: COROUTINES_PACKAGE.Continuation<kotlin.Unit>): kotlin.Unit
@@ -1,11 +1,12 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -SUSPENSION_CALL_MUST_BE_USED_AS_RETURN_VALUE
// COMMON_COROUTINES_TEST
interface SuperInterface {
suspend fun superFun() {}
suspend fun String.superExtFun() {}
}
@kotlin.coroutines.experimental.RestrictsSuspension
@COROUTINES_PACKAGE.RestrictsSuspension
open class RestrictedController : SuperInterface {
suspend fun memberFun() {}
suspend fun String.memberExtFun() {}
@@ -5,7 +5,7 @@ public fun generate2(/*0*/ f: suspend RestrictedController.() -> kotlin.Unit): k
public fun generate3(/*0*/ f: suspend SubClass.() -> kotlin.Unit): kotlin.Unit
public fun kotlin.String.test(): kotlin.Unit
@kotlin.coroutines.experimental.RestrictsSuspension public open class RestrictedController : SuperInterface {
@COROUTINES_PACKAGE.RestrictsSuspension public open class RestrictedController : SuperInterface {
public constructor RestrictedController()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -1,8 +1,9 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -SUSPENSION_CALL_MUST_BE_USED_AS_RETURN_VALUE
// COMMON_COROUTINES_TEST
interface SuperInterface
@kotlin.coroutines.experimental.RestrictsSuspension
@COROUTINES_PACKAGE.RestrictsSuspension
open class RestrictedController : SuperInterface
class SubClass : RestrictedController()
@@ -20,7 +20,7 @@ public final class A {
public final suspend fun SuperInterface.memExtSuper(): kotlin.Unit
}
@kotlin.coroutines.experimental.RestrictsSuspension public open class RestrictedController : SuperInterface {
@COROUTINES_PACKAGE.RestrictsSuspension public open class RestrictedController : SuperInterface {
public constructor RestrictedController()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -1,8 +1,9 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -SUSPENSION_CALL_MUST_BE_USED_AS_RETURN_VALUE
// COMMON_COROUTINES_TEST
interface SuperInterface
@kotlin.coroutines.experimental.RestrictsSuspension
@COROUTINES_PACKAGE.RestrictsSuspension
open class RestrictedController : SuperInterface
class SubClass : RestrictedController()
@@ -14,7 +14,7 @@ public final class A {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@kotlin.coroutines.experimental.RestrictsSuspension public open class RestrictedController : SuperInterface {
@COROUTINES_PACKAGE.RestrictsSuspension public open class RestrictedController : SuperInterface {
public constructor RestrictedController()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -1,6 +1,7 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -SUSPENSION_CALL_MUST_BE_USED_AS_RETURN_VALUE
// COMMON_COROUTINES_TEST
@kotlin.coroutines.experimental.RestrictsSuspension
@COROUTINES_PACKAGE.RestrictsSuspension
class RestrictedController {
suspend fun member() {}
}
@@ -5,7 +5,7 @@ public fun test(): kotlin.Unit
public suspend fun RestrictedController.extension(): kotlin.Unit
public suspend fun RestrictedController.l(): kotlin.Unit
@kotlin.coroutines.experimental.RestrictsSuspension public final class RestrictedController {
@COROUTINES_PACKAGE.RestrictsSuspension public final class RestrictedController {
public constructor RestrictedController()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -1,4 +1,5 @@
@kotlin.coroutines.experimental.RestrictsSuspension
// COMMON_COROUTINES_TEST
@COROUTINES_PACKAGE.RestrictsSuspension
class RestrictedController
suspend fun Any?.extFun() {}
@@ -5,7 +5,7 @@ public suspend fun suspendFun(): kotlin.Unit
public fun test(): kotlin.Unit
public suspend fun kotlin.Any?.extFun(): kotlin.Unit
@kotlin.coroutines.experimental.RestrictsSuspension public final class RestrictedController {
@COROUTINES_PACKAGE.RestrictsSuspension public final class RestrictedController {
public constructor RestrictedController()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -1,5 +1,6 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -NOTHING_TO_INLINE
import kotlin.coroutines.experimental.*
// COMMON_COROUTINES_TEST
import COROUTINES_PACKAGE.*
suspend fun notMember(q: Double) = 1
@@ -10,7 +10,7 @@ public final class Controller {
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final suspend inline fun inlineFun(/*0*/ x: kotlin.Int): kotlin.Unit
public final suspend fun noParameters(): kotlin.Unit
public final suspend fun oldConvention(/*0*/ x: kotlin.coroutines.experimental.Continuation<kotlin.Int>): kotlin.Unit
public final suspend fun oldConvention(/*0*/ x: COROUTINES_PACKAGE.Continuation<kotlin.Int>): kotlin.Unit
public final suspend fun oneParameter(/*0*/ q: kotlin.Any): kotlin.Unit
public final suspend fun returnsString(/*0*/ q: kotlin.Any): kotlin.String
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -1,7 +1,8 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !CHECK_TYPE
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
// COMMON_COROUTINES_TEST
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
class Controller {
suspend fun noParams(): Unit = suspendCoroutineOrReturn {
@@ -1,6 +1,7 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !CHECK_TYPE
import kotlin.coroutines.experimental.*
// COMMON_COROUTINES_TEST
import COROUTINES_PACKAGE.*
class Controller {
suspend fun noParams() {
@@ -1,6 +1,7 @@
// !DIAGNOSTICS: -UNUSED_ANONYMOUS_PARAMETER
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
// COMMON_COROUTINES_TEST
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
fun nonSuspend() {}
@@ -1,6 +1,7 @@
// Tail calls are not allowed to be Nothing typed. See KT-15051
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
// COMMON_COROUTINES_TEST
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
suspend fun suspendLogAndThrow(exception: Throwable): Nothing = suspendCoroutineOrReturn { c ->
c.resumeWithException(exception)
@@ -1,6 +1,7 @@
// !DIAGNOSTICS: -UNUSED_ANONYMOUS_PARAMETER
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
// COMMON_COROUTINES_TEST
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
fun nonSuspend() {}
@@ -1,6 +1,7 @@
// !DIAGNOSTICS: -UNUSED_ANONYMOUS_PARAMETER
import kotlin.coroutines.experimental.*
import kotlin.coroutines.experimental.intrinsics.*
// COMMON_COROUTINES_TEST
import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.*
suspend fun baz() = 1