diff --git a/java/java-impl/src/com/intellij/openapi/projectRoots/JavaVersionServiceImpl.java b/java/java-impl/src/com/intellij/openapi/projectRoots/JavaVersionServiceImpl.java index b1bba82602b5..6a32170dd12a 100644 --- a/java/java-impl/src/com/intellij/openapi/projectRoots/JavaVersionServiceImpl.java +++ b/java/java-impl/src/com/intellij/openapi/projectRoots/JavaVersionServiceImpl.java @@ -23,15 +23,15 @@ import com.intellij.psi.PsiElement; * Date: 3/28/12 */ public class JavaVersionServiceImpl extends JavaVersionService { - private boolean myTestVersion = false; + private JavaSdkVersion myTestVersion = null; - public void setTestVersion(boolean testVersion) { + public void setTestVersion(JavaSdkVersion testVersion) { myTestVersion = testVersion; } @Override public boolean isAtLeast(PsiElement element, JavaSdkVersion version) { - if (ApplicationManager.getApplication().isUnitTestMode()) return myTestVersion; + if (ApplicationManager.getApplication().isUnitTestMode()) return myTestVersion != null && myTestVersion.isAtLeast(version); return JavaSdkVersionUtil.isAtLeast(element, version); } } diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/GenericsHighlightingTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/GenericsHighlightingTest.java index d783d52a9130..c5be1ba1e2aa 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/GenericsHighlightingTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/GenericsHighlightingTest.java @@ -4,6 +4,7 @@ import com.intellij.codeInspection.LocalInspectionTool; import com.intellij.codeInspection.uncheckedWarnings.UncheckedWarningLocalInspection; import com.intellij.codeInspection.unusedImport.UnusedImportLocalInspection; import com.intellij.codeInspection.unusedSymbol.UnusedSymbolLocalInspection; +import com.intellij.openapi.projectRoots.JavaSdkVersion; import com.intellij.openapi.projectRoots.JavaVersionService; import com.intellij.openapi.projectRoots.JavaVersionServiceImpl; import com.intellij.openapi.projectRoots.Sdk; @@ -142,11 +143,11 @@ public class GenericsHighlightingTest extends LightDaemonAnalyzerTestCase { private void doTest17Incompatibility() throws Exception { final JavaVersionServiceImpl javaVersionService = (JavaVersionServiceImpl)JavaVersionService.getInstance(); try { - javaVersionService.setTestVersion(true); + javaVersionService.setTestVersion(JavaSdkVersion.JDK_1_7); doTest(false); } finally { - javaVersionService.setTestVersion(false); + javaVersionService.setTestVersion(null); } } } diff --git a/java/java-tests/testSrc/com/intellij/codeInspection/RedundantCast15Test.java b/java/java-tests/testSrc/com/intellij/codeInspection/RedundantCast15Test.java index ea41faaff220..eaf27dcceccf 100644 --- a/java/java-tests/testSrc/com/intellij/codeInspection/RedundantCast15Test.java +++ b/java/java-tests/testSrc/com/intellij/codeInspection/RedundantCast15Test.java @@ -2,6 +2,9 @@ package com.intellij.codeInspection; import com.intellij.codeInspection.ex.LocalInspectionToolWrapper; import com.intellij.codeInspection.redundantCast.RedundantCastInspection; +import com.intellij.openapi.projectRoots.JavaSdkVersion; +import com.intellij.openapi.projectRoots.JavaVersionService; +import com.intellij.openapi.projectRoots.JavaVersionServiceImpl; import com.intellij.openapi.roots.LanguageLevelProjectExtension; import com.intellij.pom.java.LanguageLevel; import com.intellij.testFramework.InspectionTestCase; @@ -37,7 +40,16 @@ public class RedundantCast15Test extends InspectionTestCase { public void testRawCastsToAvoidIncompatibility() throws Exception { doTest();} - public void testTypeParameterAccessChecksJava7() throws Exception { doTest();} + public void testTypeParameterAccessChecksJava7() throws Exception { + final JavaVersionServiceImpl versionService = (JavaVersionServiceImpl)JavaVersionService.getInstance(); + try { + versionService.setTestVersion(JavaSdkVersion.JDK_1_7); + doTest(); + } + finally { + versionService.setTestVersion(null); + } + } public void testIgnore() throws Exception { final RedundantCastInspection castInspection = new RedundantCastInspection();