FIR IDE: use IGNORE_FIR instead of FIR_COMPARISON in hl quick fix tests

To explicitly specify which test are failing
This commit is contained in:
Ilya Kirillov
2021-03-29 13:35:48 +02:00
parent 18ab9c7b25
commit bd38363077
384 changed files with 447 additions and 264 deletions
@@ -15,9 +15,9 @@ import java.nio.file.Paths
abstract class AbstractHighLevelQuickFixTest : AbstractQuickFixTest() { abstract class AbstractHighLevelQuickFixTest : AbstractQuickFixTest() {
override fun doTest(beforeFileName: String) { override fun doTest(beforeFileName: String) {
IgnoreTests.runTestIfEnabledByFileDirective( IgnoreTests.runTestIfNotDisabledByFileDirective(
Paths.get(beforeFileName), Paths.get(beforeFileName),
enableTestDirective = IgnoreTests.DIRECTIVES.FIR_COMPARISON_MULTILINE_COMMENT, disableTestDirective = IgnoreTests.DIRECTIVES.IGNORE_FIR_MULTILINE_COMMENT,
directivePosition = IgnoreTests.DirectivePosition.LAST_LINE_IN_FILE, directivePosition = IgnoreTests.DirectivePosition.LAST_LINE_IN_FILE,
additionalFilesExtensions = arrayOf("after") additionalFilesExtensions = arrayOf("after")
) { ) {
@@ -175,7 +175,10 @@ object IgnoreTests {
object DIRECTIVES { object DIRECTIVES {
const val FIR_COMPARISON = "// FIR_COMPARISON" const val FIR_COMPARISON = "// FIR_COMPARISON"
const val FIR_COMPARISON_MULTILINE_COMMENT = "/* FIR_COMPARISON */" const val FIR_COMPARISON_MULTILINE_COMMENT = "/* FIR_COMPARISON */"
const val IGNORE_FIR = "// IGNORE_FIR" const val IGNORE_FIR = "// IGNORE_FIR"
const val IGNORE_FIR_MULTILINE_COMMENT = "/* IGNORE_FIR */"
const val FIX_ME = "// FIX_ME: " const val FIX_ME = "// FIX_ME: "
const val FIR_IDENTICAL = "// FIR_IDENTICAL" const val FIR_IDENTICAL = "// FIR_IDENTICAL"
} }
-1
View File
@@ -1,4 +1,3 @@
// FIR_IDENTICAL
import java.util.Collections import java.util.Collections
fun <T> checkSubtype(t: T) = t fun <T> checkSubtype(t: T) = t
@@ -2,4 +2,3 @@
class A() { class A() {
<caret>abstract fun foo() {} <caret>abstract fun foo() {}
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
class A() { class A() {
fun foo() {} fun foo() {}
} }
/* FIR_COMPARISON */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
<caret>abstract fun foo() {} <caret>abstract fun foo() {}
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
<caret>abstract fun foo() <caret>abstract fun foo()
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
<caret>abstract fun foo() : Any { return "a" } <caret>abstract fun foo() : Any { return "a" }
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
<caret>abstract fun foo() : Any <caret>abstract fun foo() : Any
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
<caret>abstract fun foo() : Any = 1 <caret>abstract fun foo() : Any = 1
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
<caret>abstract fun foo() : Any <caret>abstract fun foo() : Any
} }
/* IGNORE_FIR */
@@ -4,3 +4,5 @@ abstract class A() {
// 3 // 3
} }
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
<caret>abstract fun foo() /*1*/ <caret>abstract fun foo() /*1*/
} }
/* IGNORE_FIR */
@@ -3,3 +3,5 @@ abstract class A() {
<caret>abstract fun foo() = /*1*/ <caret>abstract fun foo() = /*1*/
{ "" /*2*/ } // 3 { "" /*2*/ } // 3
} }
/* IGNORE_FIR */
@@ -3,3 +3,5 @@ abstract class A() {
/*1*/ /*1*/
abstract fun foo() // 3 abstract fun foo() // 3
} }
/* IGNORE_FIR */
@@ -8,4 +8,3 @@ class Owner {
<caret>abstract val x: Int <caret>abstract val x: Int
} }
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
class A() { class A() {
<caret>abstract var i : Int <caret>abstract var i : Int
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
abstract class A() { abstract class A() {
<caret>abstract var i : Int <caret>abstract var i : Int
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
class A() { class A() {
<caret>abstract var i : Int = 0 <caret>abstract var i : Int = 0
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
class A() { class A() {
var i : Int = 0 var i : Int = 0
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
public class A() { public class A() {
<caret>abstract var i : Int <caret>abstract var i : Int
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
public abstract class A() { public abstract class A() {
<caret>abstract var i : Int <caret>abstract var i : Int
} }
/* FIR_COMPARISON */
@@ -1,2 +1,3 @@
// "Make 'i' not abstract" "true" // "Make 'i' not abstract" "true"
class A(<caret>abstract val i: Int) {} class A(<caret>abstract val i: Int) {}
/* IGNORE_FIR */
@@ -1,2 +1,3 @@
// "Make 'i' not abstract" "true" // "Make 'i' not abstract" "true"
class A(<caret>val i: Int) {} class A(<caret>val i: Int) {}
/* IGNORE_FIR */
@@ -1,2 +1,3 @@
// "Make 'i' not abstract" "true" // "Make 'i' not abstract" "true"
<caret>abstract val i: Int = 1 <caret>abstract val i: Int = 1
/* IGNORE_FIR */
@@ -1,2 +1,3 @@
// "Make 'i' not abstract" "true" // "Make 'i' not abstract" "true"
<caret>val i: Int = 1 <caret>val i: Int = 1
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A { abstract class A {
abstract var i = 0<caret> abstract var i = 0<caret>
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A { abstract class A {
abstract var i: Int abstract var i: Int
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A { abstract class A {
abstract var i : Int = 0<caret> abstract var i : Int = 0<caret>
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A { abstract class A {
abstract var i: Int<caret> abstract var i: Int<caret>
} }
/* IGNORE_FIR */
@@ -3,4 +3,3 @@ class B {
<caret>abstract val i: Int = 0 <caret>abstract val i: Int = 0
get() = field get() = field
} }
/* FIR_COMPARISON */
@@ -3,4 +3,3 @@ class B {
val i: Int = 0 val i: Int = 0
get() = field get() = field
} }
/* FIR_COMPARISON */
@@ -2,4 +2,5 @@
abstract class B { abstract class B {
abstract val i = <caret>0 abstract val i = <caret>0
get() = field get() = field
} }
/* IGNORE_FIR */
@@ -2,4 +2,5 @@
abstract class B { abstract class B {
abstract val i: Int<caret> abstract val i: Int<caret>
} }
/* IGNORE_FIR */
@@ -2,4 +2,3 @@
class A { class A {
<caret>abstract var i = 0 <caret>abstract var i = 0
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
class A { class A {
<caret>var i = 0 <caret>var i = 0
} }
/* FIR_COMPARISON */
@@ -3,4 +3,3 @@ class B {
abstract<caret> var j: Int = 0 abstract<caret> var j: Int = 0
set(v: Int) {} set(v: Int) {}
} }
/* FIR_COMPARISON */
@@ -3,4 +3,3 @@ class B {
var j: Int = 0 var j: Int = 0
set(v: Int) {} set(v: Int) {}
} }
/* FIR_COMPARISON */
@@ -7,4 +7,3 @@ enum class E {
abstract fun foo() abstract fun foo()
} }
/* FIR_COMPARISON */
@@ -10,4 +10,3 @@ interface I {
} }
inline class A<caret> : I inline class A<caret> : I
/* FIR_COMPARISON */
@@ -8,4 +8,3 @@
object O { object O {
<caret>fun foo() <caret>fun foo()
} }
/* FIR_COMPARISON */
@@ -6,4 +6,3 @@
// ERROR: Function 'foo' must have a body // ERROR: Function 'foo' must have a body
<caret>fun foo() <caret>fun foo()
/* FIR_COMPARISON */
-1
View File
@@ -19,4 +19,3 @@ object Impl : D, E {
} }
<caret>class X : D by Impl, E by Impl {} <caret>class X : D by Impl, E by Impl {}
/* FIR_COMPARISON */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
var <caret>i : Int var <caret>i : Int
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
abstract var <caret>i : Int abstract var <caret>i : Int
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
class A() { class A() {
var <caret>i : Int var <caret>i : Int
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
abstract var <caret>i : Int abstract var <caret>i : Int
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
open class A() { open class A() {
var <caret>i : Int var <caret>i : Int
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
abstract class A() { abstract class A() {
abstract var <caret>i : Int abstract var <caret>i : Int
} }
/* IGNORE_FIR */
@@ -2,4 +2,3 @@
sealed class A() { sealed class A() {
fun <caret>i() : Int fun <caret>i() : Int
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
sealed class A() { sealed class A() {
abstract fun <caret>i() : Int abstract fun <caret>i() : Int
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
class A() { class A() {
fun <caret>foo() fun <caret>foo()
} }
/* FIR_COMPARISON */
@@ -2,4 +2,3 @@
class A() { class A() {
fun <caret>foo() {} fun <caret>foo() {}
} }
/* FIR_COMPARISON */
@@ -1,2 +1,3 @@
// "Make 'foo' not abstract" "true" // "Make 'foo' not abstract" "true"
<caret>abstract fun foo() {} <caret>abstract fun foo() {}
/* IGNORE_FIR */
@@ -1,2 +1,3 @@
// "Make 'foo' not abstract" "true" // "Make 'foo' not abstract" "true"
fun foo() {} fun foo() {}
/* IGNORE_FIR */
@@ -1,2 +1,4 @@
// "Add function body" "true" // "Add function body" "true"
fun <caret>foo() fun <caret>foo()
/* IGNORE_FIR */
@@ -1,2 +1,4 @@
// "Add function body" "true" // "Add function body" "true"
fun foo() {} fun foo() {}
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ interface I {
<caret>class A : I { <caret>class A : I {
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ interface I {
abstract class A : I { abstract class A : I {
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ abstract class A {
<caret>class B : A() { <caret>class B : A() {
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ abstract class A {
abstract class B : A() { abstract class B : A() {
} }
/* IGNORE_FIR */
-1
View File
@@ -2,4 +2,3 @@
abstract class B() { abstract class B() {
open fun <caret>foo() open fun <caret>foo()
} }
/* FIR_COMPARISON */
-1
View File
@@ -2,4 +2,3 @@
abstract class B() { abstract class B() {
abstract fun <caret>foo() abstract fun <caret>foo()
} }
/* FIR_COMPARISON */
@@ -6,4 +6,5 @@ class SafeType {
fun safeB(p: SafeType?) { fun safeB(p: SafeType?) {
val v = p <caret>+ 42 val v = p <caret>+ 42
} }
/* IGNORE_FIR */
@@ -6,4 +6,5 @@ class SafeType {
fun safeB(p: SafeType?) { fun safeB(p: SafeType?) {
val v = p!! + 42 val v = p!! + 42
} }
/* IGNORE_FIR */
@@ -6,4 +6,5 @@ class SafeType {
fun safeB(p: SafeType?) { fun safeB(p: SafeType?) {
val v = p <caret>op 42 val v = p <caret>op 42
} }
/* IGNORE_FIR */
@@ -6,4 +6,5 @@ class SafeType {
fun safeB(p: SafeType?) { fun safeB(p: SafeType?) {
val v = p!! op 42 val v = p!! op 42
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
fun <T: Collection<Int>?> foo(c: T) { fun <T: Collection<Int>?> foo(c: T) {
for (i in <caret>c) { } for (i in <caret>c) { }
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
fun <T: Collection<Int>?> foo(c: T) { fun <T: Collection<Int>?> foo(c: T) {
for (i in c!!) { } for (i in c!!) { }
} }
/* IGNORE_FIR */
@@ -3,3 +3,5 @@ fun foo() {
val test : Collection<Int>? = null!! val test : Collection<Int>? = null!!
for (i in <caret>test) { } for (i in <caret>test) { }
} }
/* IGNORE_FIR */
@@ -3,3 +3,5 @@ fun foo() {
val test : Collection<Int>? = null!! val test : Collection<Int>? = null!!
for (i in <caret>test!!) { } for (i in <caret>test!!) { }
} }
/* IGNORE_FIR */
@@ -6,4 +6,5 @@ class SafeType {
fun safeB(p: SafeType?) { fun safeB(p: SafeType?) {
val v = <caret>-p val v = <caret>-p
} }
/* IGNORE_FIR */
@@ -6,4 +6,5 @@ class SafeType {
fun safeB(p: SafeType?) { fun safeB(p: SafeType?) {
val v = -p!! val v = -p!!
} }
/* IGNORE_FIR */
@@ -11,4 +11,3 @@ fun foo() {
val test: Some? = Some() val test: Some? = Some()
for (i in <caret>test) { } for (i in <caret>test) { }
} }
/* FIR_COMPARISON */
@@ -7,3 +7,5 @@ fun foo() {
val test: Some? = Some() val test: Some? = Some()
for (i in <caret>test) { } for (i in <caret>test) { }
} }
/* IGNORE_FIR */
@@ -7,3 +7,5 @@ fun foo() {
val test: Some? = Some() val test: Some? = Some()
for (i in test!!) { } for (i in test!!) { }
} }
/* IGNORE_FIR */
+2 -1
View File
@@ -4,4 +4,5 @@ fun callMe(p: String) {}
fun callIt(p: Any) { fun callIt(p: Any) {
callMe(<caret>p as String?) callMe(<caret>p as String?)
} }
/* IGNORE_FIR */
+2 -1
View File
@@ -4,4 +4,5 @@ fun callMe(p: String) {}
fun callIt(p: Any) { fun callIt(p: Any) {
callMe(<caret>(p as String?)!!) callMe(<caret>(p as String?)!!)
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
fun foo(a: String) { fun foo(a: String) {
val b = a <caret>as String val b = a <caret>as String
} }
/* IGNORE_FIR */
@@ -2,3 +2,5 @@
fun foo(a: String) { fun foo(a: String) {
val b = a val b = a
} }
/* IGNORE_FIR */
@@ -1,4 +1,5 @@
// "Remove useless cast" "true" // "Remove useless cast" "true"
fun test() { fun test() {
({ "" } as<caret> () -> String) ({ "" } as<caret> () -> String)
} }
/* IGNORE_FIR */
@@ -1,4 +1,5 @@
// "Remove useless cast" "true" // "Remove useless cast" "true"
fun test() { fun test() {
{ "" } { "" }
} }
/* IGNORE_FIR */
@@ -5,4 +5,5 @@ fun test() {
foo() foo()
// comment // comment
({ "" } as<caret> () -> String) ({ "" } as<caret> () -> String)
} }
/* IGNORE_FIR */
@@ -5,4 +5,5 @@ fun test() {
foo() foo()
// comment // comment
({ "" }) ({ "" })
} }
/* IGNORE_FIR */
@@ -6,4 +6,5 @@ class A {
fun test() { fun test() {
A().foo() A().foo()
({ "" } as<caret> () -> String) ({ "" } as<caret> () -> String)
} }
/* IGNORE_FIR */
@@ -6,4 +6,5 @@ class A {
fun test() { fun test() {
A().foo() A().foo()
({ "" }) ({ "" })
} }
/* IGNORE_FIR */
@@ -2,4 +2,5 @@
fun test() { fun test() {
class A() class A()
({ "" } as<caret> () -> String) ({ "" } as<caret> () -> String)
} }
/* IGNORE_FIR */
@@ -2,4 +2,5 @@
fun test() { fun test() {
class A() class A()
({ "" }) ({ "" })
} }
/* IGNORE_FIR */
@@ -4,4 +4,5 @@ open class A
fun test() { fun test() {
class B : A() class B : A()
({ "" } as<caret> () -> String) ({ "" } as<caret> () -> String)
} }
/* IGNORE_FIR */
@@ -4,4 +4,5 @@ open class A
fun test() { fun test() {
class B : A() class B : A()
({ "" }) ({ "" })
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ fun main() {
foo(); foo();
({ "" } as<caret> () -> String) ({ "" } as<caret> () -> String)
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ fun main() {
foo(); foo();
{ "" } { "" }
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ fun test(x: Any): Int {
} }
return -1 return -1
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ fun test(x: Any): Int {
} }
return -1 return -1
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ fun test(x: Any): String? {
} }
return null return null
} }
/* IGNORE_FIR */
@@ -5,3 +5,5 @@ fun test(x: Any): String? {
} }
return null return null
} }
/* IGNORE_FIR */
@@ -4,3 +4,5 @@ fun foo(a: String) {
} }
} }
/* IGNORE_FIR */
@@ -4,3 +4,5 @@ fun foo(a: String) {
} }
} }
/* IGNORE_FIR */
@@ -9,3 +9,5 @@ fun foo(bar: Base):Int {
else -> 1 else -> 1
} }
} }
/* IGNORE_FIR */
@@ -8,3 +8,5 @@ fun foo(bar: Base):Int {
else -> 42 else -> 42
} }
} }
/* IGNORE_FIR */

Some files were not shown because too many files have changed in this diff Show More