Got rid of ModuleDescription intermediate entity.

This commit is contained in:
Evgeny Gerashchenko
2014-07-08 14:51:17 +04:00
parent 40703c125c
commit c4573b8c5a
8 changed files with 91 additions and 221 deletions
@@ -16,28 +16,27 @@
package org.jetbrains.jet.modules.xml;
import com.intellij.openapi.util.Pair;
import com.intellij.openapi.util.io.FileUtil;
import junit.framework.TestCase;
import kotlin.modules.Module;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.JetTestUtils;
import org.jetbrains.jet.cli.common.messages.CompilerMessageLocation;
import org.jetbrains.jet.cli.common.messages.CompilerMessageSeverity;
import org.jetbrains.jet.cli.common.messages.MessageCollector;
import org.jetbrains.jet.cli.common.messages.MessageRenderer;
import org.jetbrains.jet.cli.common.modules.ModuleDescription;
import org.jetbrains.jet.cli.common.modules.ModuleScriptData;
import org.jetbrains.jet.cli.common.modules.ModuleXmlParser;
import java.io.File;
import java.io.IOException;
import java.util.List;
public abstract class AbstractModuleXmlParserTest extends TestCase {
protected void doTest(String xmlPath) throws IOException {
File txtFile = new File(FileUtil.getNameWithoutExtension(xmlPath) + ".txt");
Pair<List<ModuleDescription>, String> result = ModuleXmlParser.parseModuleDescriptionsAndIncrementalCacheDir(xmlPath, new MessageCollector() {
ModuleScriptData result = ModuleXmlParser.parseModuleScript(xmlPath, new MessageCollector() {
@Override
public void report(
@NotNull CompilerMessageSeverity severity, @NotNull String message, @NotNull CompilerMessageLocation location
@@ -47,12 +46,12 @@ public abstract class AbstractModuleXmlParserTest extends TestCase {
});
StringBuilder sb = new StringBuilder();
if (result.second != null) {
sb.append("incrementalCacheDir=").append(result.second).append("\n\n");
if (result.getIncrementalCacheDir() != null) {
sb.append("incrementalCacheDir=").append(result.getIncrementalCacheDir()).append("\n\n");
}
for (ModuleDescription description : result.first) {
sb.append(description).append("\n");
for (Module module : result.getModules()) {
sb.append(moduleToString(module)).append("\n");
}
String actual = sb.toString();
@@ -64,4 +63,12 @@ public abstract class AbstractModuleXmlParserTest extends TestCase {
JetTestUtils.assertEqualsToFile(txtFile, actual);
}
private static String moduleToString(@NotNull Module module) {
return module.getModuleName() +
"\n\toutputDir=" + module.getOutputDirectory() +
"\n\tsources=" + module.getSourceFiles() +
"\n\tclasspath=" + module.getClasspathRoots() +
"\n\tannotations=" + module.getAnnotationsRoots();
}
}