Remove some legacy codegen tests, move some to generated
This commit is contained in:
committed by
Alexander Udalov
parent
f8dfaf4599
commit
bab127ad33
@@ -0,0 +1,32 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
enum class IssueState {
|
||||
DEFAULT,
|
||||
FIXED {
|
||||
override fun ToString() = "K"
|
||||
};
|
||||
|
||||
open fun ToString(): String = "O"
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val field = IssueState::class.java.getField("FIXED")
|
||||
|
||||
val typeName = field.type.name
|
||||
if (typeName != "IssueState") return "Fail type name: $typeName"
|
||||
|
||||
val className = field.get(null).javaClass.name
|
||||
if (className != "IssueState\$FIXED") return "Fail class name: $className"
|
||||
|
||||
val classLoader = IssueState::class.java.classLoader
|
||||
classLoader.loadClass("IssueState\$FIXED")
|
||||
try {
|
||||
classLoader.loadClass("IssueState\$DEFAULT")
|
||||
return "Fail: no class should have been generated for DEFAULT"
|
||||
}
|
||||
catch (e: Exception) {
|
||||
// ok
|
||||
}
|
||||
|
||||
return IssueState.DEFAULT.ToString() + IssueState.FIXED.ToString()
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
// WITH_RUNTIME
|
||||
// FULL_JDK
|
||||
|
||||
import java.lang.reflect.Modifier
|
||||
|
||||
enum class En {
|
||||
Y
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val klass = En::class.java
|
||||
val superclass = klass.superclass.name
|
||||
if (superclass != "java.lang.Enum") "Fail superclass: $superclass"
|
||||
|
||||
val enumModifiers = klass.modifiers
|
||||
if ((enumModifiers and 0x4000) == 0) return "Fail ACC_ENUM on class"
|
||||
if ((enumModifiers and Modifier.FINAL) == 0) return "Fail FINAL on class"
|
||||
|
||||
val entry = klass.getField("Y")
|
||||
val entryModifiers = entry.modifiers
|
||||
if ((entryModifiers and 0x4000) == 0) return "Fail ACC_ENUM on entry"
|
||||
if ((entryModifiers and Modifier.FINAL) == 0) return "Fail FINAL on entry"
|
||||
if ((entryModifiers and Modifier.STATIC) == 0) return "Fail FINAL on entry"
|
||||
if ((entryModifiers and Modifier.PUBLIC) == 0) return "Fail FINAL on entry"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
enum class State {
|
||||
O,
|
||||
K
|
||||
}
|
||||
|
||||
fun box() = "${State.O.name}${State.K.name}"
|
||||
@@ -0,0 +1,14 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
enum class State {
|
||||
O,
|
||||
K
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val field = State::class.java.getField("O")
|
||||
val className = field.get(null).javaClass.name
|
||||
if (className != "State") return "Fail: $className"
|
||||
|
||||
return "${State.O.name}${State.K.name}"
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
fun box() = IssueState.DEFAULT.ToString() + IssueState.FIXED.ToString()
|
||||
|
||||
enum class IssueState {
|
||||
DEFAULT,
|
||||
FIXED {
|
||||
override fun ToString() = "K"
|
||||
};
|
||||
|
||||
open fun ToString() : String = "O"
|
||||
}
|
||||
Reference in New Issue
Block a user