IDE testdata: s/trait/interface
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
// "Add 'open fun f()' to 'A'" "true"
|
||||
trait A
|
||||
interface A
|
||||
class B : A {
|
||||
<caret>override fun f() {}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Add 'open fun f()' to 'A'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
open fun f()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Add 'open fun f()' to 'A'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
}
|
||||
class B : A {
|
||||
<caret>override fun f() {}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Add 'open fun f()' to 'A'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
open fun f()
|
||||
}
|
||||
class B : A {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// "Add function to supertype..." "true"
|
||||
trait A {}
|
||||
trait B {}
|
||||
interface A {}
|
||||
interface B {}
|
||||
class C: A, B {
|
||||
<caret>override fun foo() {}
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
// "Add function to supertype..." "true"
|
||||
trait A {
|
||||
interface A {
|
||||
open fun foo()
|
||||
}
|
||||
trait B {}
|
||||
interface B {}
|
||||
class C: A, B {
|
||||
<caret>override fun foo() {}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(a: Int, x: T)'" "true"
|
||||
trait A<R> {
|
||||
interface A<R> {
|
||||
fun f(a: Int, b: R)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(a: Int, x: T)'" "true"
|
||||
trait A<R> {
|
||||
interface A<R> {
|
||||
fun f(a: Int, b: R)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// "Change function signature..." "true"
|
||||
// ERROR: <html>Class 'B' must be declared abstract or implement abstract member<br/><b>internal</b> <b>abstract</b> <b>fun</b> f(a: kotlin.String): kotlin.Unit <i>defined in</i> A</html>
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
fun f(a: String)
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// "Change function signature..." "true"
|
||||
// ERROR: <html>Class 'B' must be declared abstract or implement abstract member<br/><b>internal</b> <b>abstract</b> <b>fun</b> f(a: kotlin.String): kotlin.Unit <i>defined in</i> A</html>
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
fun f(a: String)
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
trait B : A {
|
||||
interface B : A {
|
||||
}
|
||||
|
||||
class C : B {
|
||||
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
trait B : A {
|
||||
interface B : A {
|
||||
}
|
||||
|
||||
class C : B {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
trait B : A {
|
||||
interface B : A {
|
||||
<caret>override fun f(a: String)
|
||||
}
|
||||
|
||||
+2
-2
@@ -1,8 +1,8 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
trait B : A {
|
||||
interface B : A {
|
||||
<caret>override fun f(a: Int)
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(a: Int)'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f(a: Int)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f()'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f()'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// "Change function signature to 'fun f()'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f()
|
||||
}
|
||||
trait B {
|
||||
interface B {
|
||||
fun f()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// "Change function signature to 'fun f()'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun f()
|
||||
}
|
||||
trait B {
|
||||
interface B {
|
||||
fun f()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(y: S, x: List<Set<R>>)'" "true"
|
||||
trait A<P,Q> {
|
||||
interface A<P,Q> {
|
||||
fun f(a: Q, b: List<Set<P>>)
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// "Change function signature to 'fun f(y: S, x: List<Set<R>>)'" "true"
|
||||
trait A<P,Q> {
|
||||
interface A<P,Q> {
|
||||
fun f(a: Q, b: List<Set<P>>)
|
||||
}
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@ open class A {
|
||||
fun foo() {}
|
||||
}
|
||||
|
||||
trait X {
|
||||
interface X {
|
||||
final fun foo() {}
|
||||
}
|
||||
|
||||
trait Y {
|
||||
interface Y {
|
||||
final fun foo() {}
|
||||
}
|
||||
|
||||
trait Z {
|
||||
interface Z {
|
||||
fun foo() {}
|
||||
}
|
||||
|
||||
|
||||
@@ -3,15 +3,15 @@ open class A {
|
||||
open fun foo() {}
|
||||
}
|
||||
|
||||
trait X {
|
||||
interface X {
|
||||
open fun foo() {}
|
||||
}
|
||||
|
||||
trait Y {
|
||||
interface Y {
|
||||
open fun foo() {}
|
||||
}
|
||||
|
||||
trait Z {
|
||||
interface Z {
|
||||
fun foo() {}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
// "Make XX.foo open" "true"
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo()
|
||||
}
|
||||
|
||||
trait XX : X {
|
||||
interface XX : X {
|
||||
override final fun foo() {
|
||||
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
// "Make XX.foo open" "true"
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo()
|
||||
}
|
||||
|
||||
trait XX : X {
|
||||
interface XX : X {
|
||||
override open fun foo() {
|
||||
|
||||
}
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
// "Make XX.foo open" "true"
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo()
|
||||
}
|
||||
|
||||
trait XX : X {
|
||||
interface XX : X {
|
||||
override final fun foo() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
trait Y : X, XX {
|
||||
interface Y : X, XX {
|
||||
}
|
||||
|
||||
class B() : Y {
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
// "Make XX.foo open" "true"
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo()
|
||||
}
|
||||
|
||||
trait XX : X {
|
||||
interface XX : X {
|
||||
override open fun foo() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
trait Y : X, XX {
|
||||
interface Y : X, XX {
|
||||
}
|
||||
|
||||
class B() : Y {
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// ERROR: Cannot access '<init>': it is 'private' in 'E'
|
||||
// ERROR: 'ordinal' in 'E' is final and cannot be overridden
|
||||
enum class E {}
|
||||
trait X {
|
||||
interface X {
|
||||
final fun ordinal() : Int = 42
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ abstract class A {
|
||||
abstract fun foo(arg : Int) : Int;
|
||||
}
|
||||
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo(agr: Int) : Int;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@ abstract class A {
|
||||
abstract fun foo(arg : Int) : Int;
|
||||
}
|
||||
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo(arg : Int) : Int;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@ abstract class A {
|
||||
abstract fun foo(arg : Int) : Int;
|
||||
}
|
||||
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo(arg : Int) : Int;
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -3,14 +3,14 @@
|
||||
// ACTION: Disable inspection
|
||||
// ACTION: Edit inspection profile setting
|
||||
// ERROR: <html>Return type is '(kotlin.Int) → kotlin.Int', which is not a subtype of overridden<br/><b>internal</b> <b>abstract</b> <b>val</b> x: (kotlin.String) → kotlin.Int <i>defined in</i> A</html>
|
||||
trait A {
|
||||
interface A {
|
||||
val x: (String) -> Int
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
val x: (String) -> Any
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override val x: (Int) -> Int<caret>
|
||||
}
|
||||
+3
-3
@@ -1,13 +1,13 @@
|
||||
// "class org.jetbrains.kotlin.idea.quickfix.ChangeVariableTypeFix" "false"
|
||||
// ERROR: <html>Var-property type is 'kotlin.String', which is not a type of overridden<br/><b>internal</b> <b>abstract</b> <b>var</b> x: kotlin.Int <i>defined in</i> A</html>
|
||||
trait A {
|
||||
interface A {
|
||||
var x: Int
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
var x: Any
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override var x: String<caret>
|
||||
}
|
||||
|
||||
+3
-3
@@ -1,13 +1,13 @@
|
||||
// "class org.jetbrains.kotlin.idea.quickfix.ChangeVariableTypeFix" "false"
|
||||
// ERROR: <html>Var-property type is 'kotlin.Int', which is not a type of overridden<br/><b>internal</b> <b>abstract</b> <b>var</b> x: kotlin.String <i>defined in</i> A</html>
|
||||
trait A {
|
||||
interface A {
|
||||
var x: String
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
var x: Any
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override var x: Int<caret>
|
||||
}
|
||||
|
||||
+3
-3
@@ -1,13 +1,13 @@
|
||||
// "class org.jetbrains.kotlin.idea.quickfix.ChangeFunctionReturnTypeFix" "false"
|
||||
// ERROR: <html>Return type is 'kotlin.Long', which is not a subtype of overridden<br/><b>internal</b> <b>abstract</b> <b>fun</b> foo(): kotlin.Int <i>defined in</i> A</html>
|
||||
trait A {
|
||||
interface A {
|
||||
fun foo(): Int
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
fun foo(): String
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override fun foo(): Long
|
||||
}
|
||||
|
||||
+3
-3
@@ -1,12 +1,12 @@
|
||||
// "Change 'B.x' type to '(Int) -> Int'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
val x: (Int) -> Int
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
val x: (String) -> Any
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override val x: (Int) -> Int<caret>
|
||||
}
|
||||
+3
-3
@@ -1,12 +1,12 @@
|
||||
// "Change 'B.x' type to '(Int) -> Int'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
val x: (Int) -> Int
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
val x: (Int) -> Int
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override val x: (Int) -> Int<caret>
|
||||
}
|
||||
+3
-3
@@ -1,12 +1,12 @@
|
||||
// "Change 'A.x' type to 'String'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
var x: Int
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
var x: String
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override var x: String<caret>
|
||||
}
|
||||
+3
-3
@@ -1,12 +1,12 @@
|
||||
// "Change 'A.x' type to 'String'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
var x: String
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
var x: String
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override var x: String<caret>
|
||||
}
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
// "Change 'B.x' type to '(String) -> Int'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
var x: (String) -> Int
|
||||
}
|
||||
trait B : A {
|
||||
interface B : A {
|
||||
override var x: (Int) -> String<caret>
|
||||
}
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
// "Change 'B.x' type to '(String) -> Int'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
var x: (String) -> Int
|
||||
}
|
||||
trait B : A {
|
||||
interface B : A {
|
||||
override var x: (String) -> Int
|
||||
}
|
||||
+3
-3
@@ -1,12 +1,12 @@
|
||||
// "Change 'A.foo' function return type to 'Long'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun foo(): Int
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
fun foo(): Number
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override fun foo(): Long<caret>
|
||||
}
|
||||
+3
-3
@@ -1,12 +1,12 @@
|
||||
// "Change 'A.foo' function return type to 'Long'" "true"
|
||||
trait A {
|
||||
interface A {
|
||||
fun foo(): Long
|
||||
}
|
||||
|
||||
trait B {
|
||||
interface B {
|
||||
fun foo(): Number
|
||||
}
|
||||
|
||||
trait C : A, B {
|
||||
interface C : A, B {
|
||||
override fun foo(): Long<caret>
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
// "Change 'prop' type to 'Int'" "true"
|
||||
// ERROR: Null can not be a value of a non-null type kotlin.Int
|
||||
trait Test<T> {
|
||||
interface Test<T> {
|
||||
val prop : T
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// "Change 'prop' type to 'Int'" "true"
|
||||
// ERROR: Null can not be a value of a non-null type kotlin.Int
|
||||
trait Test<T> {
|
||||
interface Test<T> {
|
||||
val prop : T
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// "Change 'A.x' type to 'Int'" "true"
|
||||
trait X {
|
||||
interface X {
|
||||
val x: Int
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// "Change 'A.x' type to 'Int'" "true"
|
||||
trait X {
|
||||
interface X {
|
||||
val x: Int
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ abstract class A {
|
||||
abstract fun foo() : S;
|
||||
}
|
||||
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo() : T;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ abstract class A {
|
||||
abstract fun foo() : S;
|
||||
}
|
||||
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo() : T;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -6,7 +6,7 @@ abstract class A {
|
||||
abstract fun foo() : Int;
|
||||
}
|
||||
|
||||
trait X {
|
||||
interface X {
|
||||
fun foo() : Long;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user