Deal with absence of js library. fix K2JSMessagingTest

This commit is contained in:
Pavel V. Talanov
2012-07-03 17:58:58 +04:00
parent 508b241553
commit dd43f6b699
4 changed files with 18 additions and 10 deletions
@@ -39,6 +39,7 @@ import org.jetbrains.jet.plugin.project.JsModuleDetector;
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import static org.jetbrains.jet.plugin.compiler.CompilerUtils.invokeExecMethod;
@@ -166,7 +167,7 @@ public final class K2JSCompiler implements TranslatingCompiler {
}
private static void addLibLocationAndTarget(@NotNull Module module, @NotNull ArrayList<String> args) {
Pair<String[], String> libLocationAndTarget = JsModuleDetector.getLibLocationAndTargetForProject(module);
Pair<List<String>, String> libLocationAndTarget = JsModuleDetector.getLibLocationAndTargetForProject(module);
StringBuilder sb = StringBuilderSpinAllocator.alloc();
AccessToken token = ReadAction.start();
@@ -16,6 +16,7 @@
package org.jetbrains.jet.plugin.project;
import com.google.common.collect.Lists;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleManager;
import com.intellij.openapi.project.Project;
@@ -27,6 +28,8 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.psi.JetFile;
import java.util.List;
/**
* @author Pavel Talanov
* <p/>
@@ -53,7 +56,7 @@ public final class JsModuleDetector {
}
@NotNull
public static Pair<String[], String> getLibLocationAndTargetForProject(@NotNull Project project) {
public static Pair<List<String>, String> getLibLocationAndTargetForProject(@NotNull Project project) {
Module module = getJSModule(project);
if (module == null) {
return Pair.empty();
@@ -64,11 +67,15 @@ public final class JsModuleDetector {
}
@NotNull
public static Pair<String[], String> getLibLocationAndTargetForProject(@NotNull Module module) {
public static Pair<List<String>, String> getLibLocationAndTargetForProject(@NotNull Module module) {
K2JSModuleComponent jsModuleComponent = K2JSModuleComponent.getInstance(module);
String pathToJavaScriptLibrary = jsModuleComponent.getPathToJavaScriptLibrary();
String basePath = ModuleRootManager.getInstance(module).getContentRoots()[0].getPath();
return Pair.create(new String[] {basePath + pathToJavaScriptLibrary}, jsModuleComponent.getEcmaVersion().toString());
List<String> pathsToJSLib = Lists.newArrayList();
if (pathToJavaScriptLibrary != null) {
pathsToJSLib.add(basePath + pathToJavaScriptLibrary);
}
return Pair.create(pathsToJSLib, jsModuleComponent.getEcmaVersion().toString());
}
@Nullable