default imports added to script definitions
This commit is contained in:
@@ -27,6 +27,8 @@ import java.lang.reflect.Constructor;
|
||||
import java.lang.reflect.Field;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.lang.reflect.Method;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -37,6 +39,9 @@ public class ScriptGenTest extends CodegenTestCase {
|
||||
public static final JetScriptDefinition FIB_SCRIPT_DEFINITION =
|
||||
new JetScriptDefinition(".lang.kt", new AnalyzerScriptParameter("num", "jet.Int"));
|
||||
|
||||
public static final JetScriptDefinition DEFIMPORT_SCRIPT_DEFINITION =
|
||||
new JetScriptDefinition(".def.kt", null, Arrays.asList("java.util.Collections"));
|
||||
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
@@ -131,7 +136,6 @@ public class ScriptGenTest extends CodegenTestCase {
|
||||
public void testDependentScripts() {
|
||||
JetScriptDefinitionProvider.getInstance(myEnvironment.getProject()).addScriptDefinition(FIB_SCRIPT_DEFINITION);
|
||||
loadFiles("script/fibwp.lang.kt", "script/fibwprunner.ktscript");
|
||||
System.out.println(generateToText());
|
||||
final Class aClass = loadClass("Fibwprunner", generateClassesInFile());
|
||||
try {
|
||||
Constructor constructor = aClass.getConstructor();
|
||||
@@ -145,4 +149,19 @@ public class ScriptGenTest extends CodegenTestCase {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
public void testDefImports() {
|
||||
JetScriptDefinitionProvider.getInstance(myEnvironment.getProject()).addScriptDefinition(DEFIMPORT_SCRIPT_DEFINITION);
|
||||
loadFile("script/withdefimports.def.kt");
|
||||
final Class aClass = loadClass("Withdefimports", generateClassesInFile());
|
||||
try {
|
||||
Constructor constructor = aClass.getConstructor();
|
||||
Field rv = aClass.getField("rv");
|
||||
Object script = constructor.newInstance();
|
||||
assertEquals(Collections.emptyList(),rv.get(script));
|
||||
}
|
||||
catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user