From 2e7fe1b8fe660c867a49264abfb8a30765e07401 Mon Sep 17 00:00:00 2001 From: Ben Gruver Date: Sat, 13 Feb 2016 23:50:32 -0800 Subject: [PATCH] Fix the tests that require a real jdk --- .../org/jf/smalidea/ClassReferenceTest.java | 7 ++++++ .../org/jf/smalidea/FieldReferenceTest.java | 7 ++++++ .../org/jf/smalidea/MethodReferenceTest.java | 7 ++++++ .../java/org/jf/smalidea/SmaliClassTest.java | 22 +++++++++++++++++++ 4 files changed, 43 insertions(+) diff --git a/smalidea/src/test/java/org/jf/smalidea/ClassReferenceTest.java b/smalidea/src/test/java/org/jf/smalidea/ClassReferenceTest.java index 38bea833..05f3b1be 100644 --- a/smalidea/src/test/java/org/jf/smalidea/ClassReferenceTest.java +++ b/smalidea/src/test/java/org/jf/smalidea/ClassReferenceTest.java @@ -31,6 +31,8 @@ package org.jf.smalidea; +import com.intellij.openapi.projectRoots.Sdk; +import com.intellij.openapi.projectRoots.impl.JavaAwareProjectJdkTableImpl; import com.intellij.psi.JavaResolveResult; import com.intellij.psi.PsiClass; import com.intellij.psi.PsiReference; @@ -102,4 +104,9 @@ public class ClassReferenceTest extends ResolveTestCase { Assert.assertNotNull(smaliClass); Assert.assertEquals("blarg", smaliClass.getQualifiedName()); } + + @Override + protected Sdk getTestProjectJdk() { + return JavaAwareProjectJdkTableImpl.getInstanceEx().getInternalJdk(); + } } diff --git a/smalidea/src/test/java/org/jf/smalidea/FieldReferenceTest.java b/smalidea/src/test/java/org/jf/smalidea/FieldReferenceTest.java index a4ce3809..78360d8b 100644 --- a/smalidea/src/test/java/org/jf/smalidea/FieldReferenceTest.java +++ b/smalidea/src/test/java/org/jf/smalidea/FieldReferenceTest.java @@ -31,6 +31,8 @@ package org.jf.smalidea; +import com.intellij.openapi.projectRoots.Sdk; +import com.intellij.openapi.projectRoots.impl.JavaAwareProjectJdkTableImpl; import com.intellij.psi.PsiField; import com.intellij.psi.PsiReference; import com.intellij.testFramework.ResolveTestCase; @@ -117,4 +119,9 @@ public class FieldReferenceTest extends ResolveTestCase { Assert.assertEquals("blarg", resolvedField.getContainingClass().getQualifiedName()); Assert.assertEquals("int", resolvedField.getType().getCanonicalText()); } + + @Override + protected Sdk getTestProjectJdk() { + return JavaAwareProjectJdkTableImpl.getInstanceEx().getInternalJdk(); + } } diff --git a/smalidea/src/test/java/org/jf/smalidea/MethodReferenceTest.java b/smalidea/src/test/java/org/jf/smalidea/MethodReferenceTest.java index adb7bed4..1de65983 100644 --- a/smalidea/src/test/java/org/jf/smalidea/MethodReferenceTest.java +++ b/smalidea/src/test/java/org/jf/smalidea/MethodReferenceTest.java @@ -31,6 +31,8 @@ package org.jf.smalidea; +import com.intellij.openapi.projectRoots.Sdk; +import com.intellij.openapi.projectRoots.impl.JavaAwareProjectJdkTableImpl; import com.intellij.psi.PsiMethod; import com.intellij.psi.PsiReference; import com.intellij.testFramework.ResolveTestCase; @@ -133,4 +135,9 @@ public class MethodReferenceTest extends ResolveTestCase { Assert.assertNotNull(resolvedMethod.getReturnType()); Assert.assertEquals("void", resolvedMethod.getReturnType().getCanonicalText()); } + + @Override + protected Sdk getTestProjectJdk() { + return JavaAwareProjectJdkTableImpl.getInstanceEx().getInternalJdk(); + } } diff --git a/smalidea/src/test/java/org/jf/smalidea/SmaliClassTest.java b/smalidea/src/test/java/org/jf/smalidea/SmaliClassTest.java index 0dd2e015..ba18b662 100644 --- a/smalidea/src/test/java/org/jf/smalidea/SmaliClassTest.java +++ b/smalidea/src/test/java/org/jf/smalidea/SmaliClassTest.java @@ -31,11 +31,21 @@ package org.jf.smalidea; +import com.intellij.openapi.module.Module; +import com.intellij.openapi.projectRoots.Sdk; +import com.intellij.openapi.projectRoots.impl.JavaAwareProjectJdkTableImpl; +import com.intellij.openapi.roots.ContentEntry; +import com.intellij.openapi.roots.LanguageLevelModuleExtension; +import com.intellij.openapi.roots.ModifiableRootModel; +import com.intellij.pom.java.LanguageLevel; import com.intellij.psi.JavaPsiFacade; import com.intellij.psi.PsiClass; import com.intellij.psi.PsiClassType; import com.intellij.psi.PsiElementFactory; +import com.intellij.testFramework.LightProjectDescriptor; +import com.intellij.testFramework.fixtures.DefaultLightProjectDescriptor; import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase; +import org.jetbrains.annotations.NotNull; import org.jf.smalidea.psi.impl.SmaliClass; import org.jf.smalidea.psi.impl.SmaliFile; import org.junit.Assert; @@ -143,4 +153,16 @@ public class SmaliClassTest extends LightCodeInsightFixtureTestCase { Assert.assertFalse(smaliClass.isInheritor(throwableClass, false)); Assert.assertFalse(smaliClass.isInheritor(objectClass, false)); } + + @NotNull @Override protected LightProjectDescriptor getProjectDescriptor() { + return new DefaultLightProjectDescriptor() { + public Sdk getSdk() { + return JavaAwareProjectJdkTableImpl.getInstanceEx().getInternalJdk(); + } + + public void configureModule(Module module, ModifiableRootModel model, ContentEntry contentEntry) { + model.getModuleExtension(LanguageLevelModuleExtension.class).setLanguageLevel(LanguageLevel.JDK_1_6); + } + }; + } }