KT-2589 fix: putting some order on bytecode flags
This commit is contained in:
@@ -17,6 +17,7 @@
|
||||
package org.jetbrains.jet.codegen;
|
||||
|
||||
import com.intellij.openapi.components.ServiceManager;
|
||||
import org.jetbrains.asm4.Opcodes;
|
||||
import org.jetbrains.jet.ConfigurationKind;
|
||||
import org.jetbrains.jet.lang.parsing.JetParserDefinition;
|
||||
import org.jetbrains.jet.lang.parsing.JetScriptDefinition;
|
||||
@@ -106,7 +107,8 @@ public class ScriptGenTest extends CodegenTestCase {
|
||||
final Class aClass = loadClass("Fib", generateClassesInFile());
|
||||
try {
|
||||
Constructor constructor = aClass.getConstructor(int.class);
|
||||
Field result = aClass.getField("result");
|
||||
Field result = aClass.getDeclaredField("result");
|
||||
result.setAccessible(true);
|
||||
Object script = constructor.newInstance(5);
|
||||
assertEquals(8,result.get(script));
|
||||
}
|
||||
@@ -121,7 +123,8 @@ public class ScriptGenTest extends CodegenTestCase {
|
||||
final Class aClass = loadClass("test.Fibwp", generateClassesInFile());
|
||||
try {
|
||||
Constructor constructor = aClass.getConstructor(int.class);
|
||||
Field result = aClass.getField("result");
|
||||
Field result = aClass.getDeclaredField("result");
|
||||
result.setAccessible(true);
|
||||
Object script = constructor.newInstance(5);
|
||||
assertEquals(8,result.get(script));
|
||||
}
|
||||
@@ -136,11 +139,17 @@ public class ScriptGenTest extends CodegenTestCase {
|
||||
final Class aClass = loadClass("Fibwprunner", generateClassesInFile());
|
||||
try {
|
||||
Constructor constructor = aClass.getConstructor();
|
||||
Field result = aClass.getField("result");
|
||||
Field result = aClass.getDeclaredField("result");
|
||||
result.setAccessible(true);
|
||||
Method resultMethod = aClass.getDeclaredMethod("getResult");
|
||||
assertTrue((resultMethod.getModifiers() & Opcodes.ACC_FINAL) != 0);
|
||||
assertTrue((resultMethod.getModifiers() & Opcodes.ACC_PUBLIC) != 0);
|
||||
Field rv = aClass.getField("rv");
|
||||
assertTrue((result.getModifiers() & Opcodes.ACC_PRIVATE) != 0);
|
||||
Object script = constructor.newInstance();
|
||||
assertEquals(12,rv.get(script));
|
||||
assertEquals(8,result.get(script));
|
||||
assertEquals(8,resultMethod.invoke(script));
|
||||
}
|
||||
catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
|
||||
Reference in New Issue
Block a user