Create expected quick-fix: check types accessibility before creation

Related to KT-27075
This commit is contained in:
Mikhail Glukhikh
2018-11-20 17:23:15 +03:00
parent f31428257d
commit 8b7c7dbe25
28 changed files with 253 additions and 24 deletions
@@ -0,0 +1,5 @@
expect class Some {
companion object {
fun createMe(): Some
}
}
@@ -0,0 +1,8 @@
// "Create expected class in common module testModule_Common" "true"
// DISABLE-ERRORS
actual class <caret>Some {
actual companion object {
actual fun createMe() = Some()
}
}
@@ -0,0 +1,8 @@
// "Create expected class in common module testModule_Common" "true"
// DISABLE-ERRORS
actual class <caret>Some {
actual companion object {
actual fun createMe() = Some()
}
}
@@ -0,0 +1,2 @@
expect class SomeString
// It would be great to have SomeString in foo() below, but it's problematic
@@ -0,0 +1,3 @@
expect class SomeString
// It would be great to have SomeString in foo() below, but it's problematic
expect fun foo(): String
@@ -0,0 +1,6 @@
// "Create expected function in common module testModule_Common" "true"
// DISABLE-ERRORS
actual typealias SomeString = String
actual fun <caret>foo(): SomeString = ""
@@ -0,0 +1,6 @@
// "Create expected function in common module testModule_Common" "true"
// DISABLE-ERRORS
actual typealias SomeString = String
actual fun foo(): SomeString = ""
@@ -0,0 +1 @@
expect fun foo(): String
@@ -0,0 +1,6 @@
// "Create expected function in common module testModule_Common" "true"
// DISABLE-ERRORS
typealias SomeString = String
actual fun <caret>foo(): SomeString = ""
@@ -0,0 +1,6 @@
// "Create expected function in common module testModule_Common" "true"
// DISABLE-ERRORS
typealias SomeString = String
actual fun foo(): SomeString = ""
@@ -0,0 +1 @@
expect class Some
@@ -0,0 +1,3 @@
expect class Some
expect fun foo(some: List<Some>)
@@ -0,0 +1,6 @@
// "Create expected function in common module testModule_Common" "true"
// DISABLE-ERRORS
actual class Some
actual fun <caret>foo(some: List<Some>) {}
@@ -0,0 +1,6 @@
// "Create expected function in common module testModule_Common" "true"
// DISABLE-ERRORS
actual class Some
actual fun foo(some: List<Some>) {}
@@ -0,0 +1 @@
// To be implemented
@@ -0,0 +1,7 @@
// "Create expected function in common module testModule_Common" "true"
// SHOULD_FAIL_WITH: Cannot generate expected function: Type Some is not accessible from common code
// DISABLE-ERRORS
interface Some
actual fun <T : Some> <caret>foo(some: List<T>) {}
@@ -0,0 +1,7 @@
// "Create expected function in common module testModule_Common" "true"
// SHOULD_FAIL_WITH: Cannot generate expected function: Type Some is not accessible from common code
// DISABLE-ERRORS
interface Some
actual fun <T : Some> foo(some: List<T>) {}
@@ -0,0 +1 @@
// To be implemented
@@ -0,0 +1,7 @@
// "Create expected function in common module testModule_Common" "true"
// SHOULD_FAIL_WITH: Cannot generate expected function: Type Some is not accessible from common code
// DISABLE-ERRORS
class Some
actual fun <caret>foo(some: Some) {}
@@ -0,0 +1,7 @@
// "Create expected function in common module testModule_Common" "true"
// SHOULD_FAIL_WITH: Cannot generate expected function: Type Some is not accessible from common code
// DISABLE-ERRORS
class Some
actual fun foo(some: Some) {}
@@ -0,0 +1 @@
// To be implemented
@@ -0,0 +1,7 @@
// "Create expected function in common module testModule_Common" "true"
// SHOULD_FAIL_WITH: Cannot generate expected function: Type Some is not accessible from common code
// DISABLE-ERRORS
class Some
actual fun <caret>foo(some: List<Some>) {}
@@ -0,0 +1,7 @@
// "Create expected function in common module testModule_Common" "true"
// SHOULD_FAIL_WITH: Cannot generate expected function: Type Some is not accessible from common code
// DISABLE-ERRORS
class Some
actual fun foo(some: List<Some>) {}
@@ -1,4 +1,5 @@
// "Create expected function in common module proj_Common" "true"
// SHOULD_FAIL_WITH: Cannot generate expected function: Type java.util.ArrayList<kotlin.Any> is not accessible from common code
// DISABLE-ERRORS
import java.util.ArrayList
@@ -1,4 +1,5 @@
// "Create expected function in common module proj_Common" "true"
// SHOULD_FAIL_WITH: Cannot generate expected function: Type java.util.ArrayList<kotlin.Any> is not accessible from common code
// DISABLE-ERRORS
import java.util.ArrayList