EA-36903 - ISE: JavaTypeTransformer$.visitClassType Fixed

This commit is contained in:
Andrey Breslav
2013-01-10 15:30:03 +04:00
parent 33a82da493
commit 9d538dad8a
5 changed files with 58 additions and 14 deletions
@@ -26,10 +26,13 @@ import org.junit.Test;
import java.io.File;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import static org.jetbrains.jet.ConfigurationKind.ALL;
import static org.jetbrains.jet.ConfigurationKind.JDK_AND_ANNOTATIONS;
import static org.jetbrains.jet.cli.jvm.JVMConfigurationKeys.*;
import static org.jetbrains.jet.cli.jvm.JVMConfigurationKeys.ANNOTATIONS_PATH_KEY;
import static org.jetbrains.jet.cli.jvm.JVMConfigurationKeys.CLASSPATH_KEY;
public class CompileCompilerDependenciesTest {
@@ -48,14 +51,22 @@ public class CompileCompilerDependenciesTest {
ForTestCompileRuntime.runtimeJarForTests();
}
@NotNull
public static CompilerConfiguration compilerConfigurationForTests(@NotNull ConfigurationKind configurationKind,
@NotNull TestJdkKind jdkKind, File... extraClasspath) {
return compilerConfigurationForTests(configurationKind, jdkKind, Arrays.asList(extraClasspath), Collections.<File>emptyList());
}
@NotNull
public static CompilerConfiguration compilerConfigurationForTests(@NotNull ConfigurationKind configurationKind,
@NotNull TestJdkKind jdkKind, @NotNull Collection<File> extraClasspath, @NotNull Collection<File> priorityClasspath) {
CompilerConfiguration configuration = new CompilerConfiguration();
configuration.addAll(CLASSPATH_KEY, priorityClasspath);
configuration.add(CLASSPATH_KEY, jdkKind == TestJdkKind.MOCK_JDK ? JetTestUtils.findMockJdkRtJar() : PathUtil.findRtJar());
if (configurationKind == ALL) {
configuration.add(CLASSPATH_KEY, ForTestCompileRuntime.runtimeJarForTests());
}
configuration.addAll(CLASSPATH_KEY, Arrays.asList(extraClasspath));
configuration.addAll(CLASSPATH_KEY, extraClasspath);
if (configurationKind == ALL || configurationKind == JDK_AND_ANNOTATIONS) {
configuration.add(ANNOTATIONS_PATH_KEY, ForTestPackJdkAnnotations.jdkAnnotationsForTests());
@@ -30,13 +30,13 @@ import org.jetbrains.jet.cli.jvm.compiler.JetCoreEnvironment;
import org.jetbrains.jet.lang.diagnostics.Diagnostic;
import org.jetbrains.jet.lang.diagnostics.DiagnosticUtils;
import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.AnalyzingUtils;
import org.jetbrains.jet.lang.resolve.BindingContext;
import org.jetbrains.jet.utils.ExceptionUtils;
import java.io.File;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.List;
public abstract class AbstractJetDiagnosticsTest extends JetLiteFixture {
@@ -53,10 +53,10 @@ public abstract class AbstractJetDiagnosticsTest extends JetLiteFixture {
return new JetCoreEnvironment(
getTestRootDisposable(),
CompileCompilerDependenciesTest.compilerConfigurationForTests(
ConfigurationKind.JDK_AND_ANNOTATIONS,
TestJdkKind.MOCK_JDK,
JetTestUtils.getAnnotationsJar(),
javaFilesDir
ConfigurationKind.JDK_AND_ANNOTATIONS,
TestJdkKind.MOCK_JDK,
Arrays.asList(JetTestUtils.getAnnotationsJar()),
Arrays.asList(javaFilesDir)
)
);
}
@@ -15,16 +15,13 @@
*/
package org.jetbrains.jet.checkers;
import junit.framework.Assert;
import junit.framework.Test;
import junit.framework.TestSuite;
import java.io.File;
import org.jetbrains.jet.JetTestUtils;
import org.jetbrains.jet.test.InnerTestClasses;
import org.jetbrains.jet.test.TestMetadata;
import org.jetbrains.jet.checkers.AbstractDiagnosticsTestWithEagerResolve;
import java.io.File;
/** This class is generated by {@link org.jetbrains.jet.generators.tests.GenerateTests}. DO NOT MODIFY MANUALLY */
@InnerTestClasses({JetDiagnosticsTestGenerated.Tests.class, JetDiagnosticsTestGenerated.Script.class})
@@ -1839,6 +1836,11 @@ public class JetDiagnosticsTestGenerated extends AbstractDiagnosticsTestWithEage
doTest("compiler/testData/diagnostics/tests/generics/Projections.kt");
}
@TestMetadata("PseudoRawTypes.kt")
public void testPseudoRawTypes() throws Exception {
doTest("compiler/testData/diagnostics/tests/generics/PseudoRawTypes.kt");
}
@TestMetadata("RawTypeInIsExpression.kt")
public void testRawTypeInIsExpression() throws Exception {
doTest("compiler/testData/diagnostics/tests/generics/RawTypeInIsExpression.kt");