IJPL-150165 Fix Groovy tests

GitOrigin-RevId: db9944a726ea58851636f53361f83218eb831668
This commit is contained in:
Mikhail Filippov
2024-09-02 18:44:06 +04:00
committed by intellij-monorepo-bot
parent 938e70232f
commit 9d12c5dcbb
5 changed files with 3 additions and 13 deletions

View File

@@ -47,5 +47,5 @@ public interface InferenceContext {
} }
<T extends GroovyPsiElement> <T extends GroovyPsiElement>
@Nullable PsiType getExpressionType(@NotNull T element, @NotNull Function<? super T, ? extends PsiType> calculator); @Nullable PsiType getExpressionType(@NotNull T element, @NotNull Function<? super T, ? extends @Nullable PsiType> calculator);
} }

View File

@@ -56,7 +56,7 @@ internal class PartialContext(private val types: Map<VariableDescriptor, DFAType
} }
} }
override fun <T : GroovyPsiElement> getExpressionType(element: T, calculator: Function<in T, out PsiType>): PsiType { override fun <T : GroovyPsiElement> getExpressionType(element: T, calculator: Function<in T, out PsiType?>): PsiType? {
return doGetCachedValue(Pair(element, "type")) { return doGetCachedValue(Pair(element, "type")) {
calculator.apply(element) calculator.apply(element)
} }

View File

@@ -23,7 +23,7 @@ class TopInferenceContext : InferenceContext {
return ResolveCache.getInstance(ref.element.project).resolveWithCaching(ref, resolver, true, incomplete) return ResolveCache.getInstance(ref.element.project).resolveWithCaching(ref, resolver, true, incomplete)
} }
override fun <T : GroovyPsiElement> getExpressionType(element: T, calculator: Function<in T, out PsiType>): PsiType? { override fun <T : GroovyPsiElement> getExpressionType(element: T, calculator: Function<in T, out PsiType?>): PsiType? {
return CachedValuesManager.getProjectPsiDependentCache(element, calculator) return CachedValuesManager.getProjectPsiDependentCache(element, calculator)
} }
} }

View File

@@ -1,7 +1,6 @@
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. // Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.plugins.groovy.lang; package org.jetbrains.plugins.groovy.lang;
import com.intellij.idea.IJIgnore;
import org.jetbrains.plugins.groovy.LightGroovyTestCase; import org.jetbrains.plugins.groovy.LightGroovyTestCase;
import org.jetbrains.plugins.groovy.codeInspection.noReturnMethod.MissingReturnInspection; import org.jetbrains.plugins.groovy.codeInspection.noReturnMethod.MissingReturnInspection;
import org.jetbrains.plugins.groovy.util.TestUtils; import org.jetbrains.plugins.groovy.util.TestUtils;
@@ -24,7 +23,6 @@ public class MissingReturnTest extends LightGroovyTestCase {
public void testMissingReturnTryCatch() { doTest(); } public void testMissingReturnTryCatch() { doTest(); }
@IJIgnore(issue = "IJPL-150165")
public void testMissingReturnLastNull() { doTest(); } public void testMissingReturnLastNull() { doTest(); }
public void testMissingReturnImplicitReturns() { doTest(); } public void testMissingReturnImplicitReturns() { doTest(); }

View File

@@ -1,19 +1,14 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. // Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package org.jetbrains.plugins.groovy.lang.resolve package org.jetbrains.plugins.groovy.lang.resolve
import com.intellij.idea.IJIgnore
import com.intellij.openapi.util.RecursionManager import com.intellij.openapi.util.RecursionManager
import com.intellij.psi.PsiClassType import com.intellij.psi.PsiClassType
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiIntersectionType import com.intellij.psi.PsiIntersectionType
import com.intellij.psi.PsiReference import com.intellij.psi.PsiReference
import com.intellij.psi.PsiType import com.intellij.psi.PsiType
import com.intellij.psi.impl.source.PsiImmediateClassType import com.intellij.psi.impl.source.PsiImmediateClassType
import groovy.transform.CompileStatic import groovy.transform.CompileStatic
import org.jetbrains.plugins.groovy.codeInsight.template.postfix.templates.GrArgPostfixTemplate
import org.jetbrains.plugins.groovy.codeStyle.GrReferenceAdjuster
import org.jetbrains.plugins.groovy.lang.psi.GroovyFile import org.jetbrains.plugins.groovy.lang.psi.GroovyFile
import org.jetbrains.plugins.groovy.lang.psi.api.statements.arguments.GrArgumentLabel
import org.jetbrains.plugins.groovy.lang.psi.api.statements.expressions.GrAssignmentExpression import org.jetbrains.plugins.groovy.lang.psi.api.statements.expressions.GrAssignmentExpression
import org.jetbrains.plugins.groovy.lang.psi.api.statements.expressions.GrExpression import org.jetbrains.plugins.groovy.lang.psi.api.statements.expressions.GrExpression
import org.jetbrains.plugins.groovy.lang.psi.api.statements.expressions.GrReferenceExpression import org.jetbrains.plugins.groovy.lang.psi.api.statements.expressions.GrReferenceExpression
@@ -24,7 +19,6 @@ import org.jetbrains.plugins.groovy.lang.psi.util.PsiUtil
import static com.intellij.psi.CommonClassNames.* import static com.intellij.psi.CommonClassNames.*
import static org.jetbrains.plugins.groovy.lang.psi.dataFlow.types.NestedContextKt.allowNestedContext import static org.jetbrains.plugins.groovy.lang.psi.dataFlow.types.NestedContextKt.allowNestedContext
import static org.jetbrains.plugins.groovy.lang.psi.dataFlow.types.NestedContextKt.allowNestedContextOnce import static org.jetbrains.plugins.groovy.lang.psi.dataFlow.types.NestedContextKt.allowNestedContextOnce
import static org.jetbrains.plugins.groovy.lang.psi.dataFlow.types.NestedContextKt.forbidNestedContext
@CompileStatic @CompileStatic
class TypeInferenceTest extends TypeInferenceTestBase { class TypeInferenceTest extends TypeInferenceTestBase {
@@ -1214,7 +1208,6 @@ while (u) {
''', null ''', null
} }
@IJIgnore(issue = "IJPL-150165")
void 'test no soe cyclic multi-assignment'() { void 'test no soe cyclic multi-assignment'() {
allowNestedContext(4, testRootDisposable) allowNestedContext(4, testRootDisposable)
doTest '''\ doTest '''\
@@ -1978,7 +1971,6 @@ protected void onLoadConfig (Map configSection) {
}""", null }""", null
} }
@IJIgnore(issue = "IJPL-150165")
void 'test soe with large flow'() { void 'test soe with large flow'() {
RecursionManager.disableAssertOnRecursionPrevention(testRootDisposable) RecursionManager.disableAssertOnRecursionPrevention(testRootDisposable)
RecursionManager.disableMissedCacheAssertions(testRootDisposable) RecursionManager.disableMissedCacheAssertions(testRootDisposable)