This is an automated email from the ASF dual-hosted git repository.

jdaugherty pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/grails-intellij-plugin.git


The following commit(s) were added to refs/heads/main by this push:
     new 67c6f28  Pin Mock JDK 11 in light-fixture GSP tests for 2026.2
67c6f28 is described below

commit 67c6f28750ad3aa1b17fa17f6b8e04c4fe510a41
Author: James Daugherty <[email protected]>
AuthorDate: Sun Jul 19 08:39:45 2026 -0400

    Pin Mock JDK 11 in light-fixture GSP tests for 2026.2
    
    GspResolveIndexesTest, GspCssTest, GspImportTest and GstringAttributeTest 
extend
    LightJavaCodeInsightFixtureTestCase directly and used the platform default 
light
    descriptor, whose SDK is the Mock JDK 1.7 that 2026.2 no longer ships. 
Their GSP
    module thus had no resolvable java.* classes, so <g:each>/<g:collect> 
loop-variable
    element types (including numeric list literals) and GSP CSS/import/GString 
tests
    failed. Add a shared GroovyProjectDescriptors.MOCK_JDK_11 descriptor and 
use it.
    
    Clears GspResolveIndexesTest, GspCssTest, GspImportTest, 
GstringAttributeTest.
---
 test/org/jetbrains/plugins/groovy/grails/gsp/GspCssTest.java      | 8 ++++++++
 test/org/jetbrains/plugins/groovy/grails/gsp/GspImportTest.java   | 8 ++++++++
 .../plugins/groovy/grails/gsp/GspResolveIndexesTest.java          | 8 ++++++++
 .../jetbrains/plugins/groovy/grails/gsp/GstringAttributeTest.java | 8 ++++++++
 .../org/jetbrains/plugins/groovy/GroovyProjectDescriptors.java    | 6 ++++++
 5 files changed, 38 insertions(+)

diff --git a/test/org/jetbrains/plugins/groovy/grails/gsp/GspCssTest.java 
b/test/org/jetbrains/plugins/groovy/grails/gsp/GspCssTest.java
index f4f7ee1..79ca090 100644
--- a/test/org/jetbrains/plugins/groovy/grails/gsp/GspCssTest.java
+++ b/test/org/jetbrains/plugins/groovy/grails/gsp/GspCssTest.java
@@ -18,13 +18,21 @@ package org.jetbrains.plugins.groovy.grails.gsp;
 
 import com.intellij.psi.PsiFile;
 import 
com.intellij.psi.css.inspections.invalid.CssInvalidPropertyValueInspection;
+import com.intellij.testFramework.LightProjectDescriptor;
 import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.plugins.groovy.GroovyProjectDescriptors;
 import junit.framework.TestCase;
 import org.jetbrains.plugins.grails.fileType.GspFileType;
 
 import java.util.List;
 
 public class GspCssTest extends LightJavaCodeInsightFixtureTestCase {
+  @Override
+  protected @NotNull LightProjectDescriptor getProjectDescriptor() {
+    return GroovyProjectDescriptors.MOCK_JDK_11;
+  }
+
   public void testIDEA47622() {
     myFixture.configureByText("a.gsp", """
       <p style="margin-left:23423px;margin-right:45px">indent content</p>
diff --git a/test/org/jetbrains/plugins/groovy/grails/gsp/GspImportTest.java 
b/test/org/jetbrains/plugins/groovy/grails/gsp/GspImportTest.java
index 94c2e5e..de9e13d 100644
--- a/test/org/jetbrains/plugins/groovy/grails/gsp/GspImportTest.java
+++ b/test/org/jetbrains/plugins/groovy/grails/gsp/GspImportTest.java
@@ -17,11 +17,19 @@
 package org.jetbrains.plugins.groovy.grails.gsp;
 
 import com.intellij.psi.PsiFile;
+import com.intellij.testFramework.LightProjectDescriptor;
 import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
+import org.jetbrains.annotations.NotNull;
 import org.jetbrains.plugins.groovy.GroovyLanguage;
+import org.jetbrains.plugins.groovy.GroovyProjectDescriptors;
 import org.jetbrains.plugins.groovy.grails.GrailsTestCase;
 
 public class GspImportTest extends LightJavaCodeInsightFixtureTestCase {
+  @Override
+  protected @NotNull LightProjectDescriptor getProjectDescriptor() {
+    return GroovyProjectDescriptors.MOCK_JDK_11;
+  }
+
   public void testImport() {
     myFixture.addFileToProject("aaa/aaa/ClassA1.java", "package aaa.aaa;\n 
public class ClassA1 {}");
     myFixture.addFileToProject("aaa/aaa/ClassA2.groovy", "package aaa.aaa;\n 
class ClassA2 {}");
diff --git 
a/test/org/jetbrains/plugins/groovy/grails/gsp/GspResolveIndexesTest.java 
b/test/org/jetbrains/plugins/groovy/grails/gsp/GspResolveIndexesTest.java
index e79bc8e..a5ab05f 100644
--- a/test/org/jetbrains/plugins/groovy/grails/gsp/GspResolveIndexesTest.java
+++ b/test/org/jetbrains/plugins/groovy/grails/gsp/GspResolveIndexesTest.java
@@ -21,15 +21,23 @@ import com.intellij.psi.PsiFile;
 import com.intellij.psi.PsiReference;
 import com.intellij.psi.PsiVariable;
 import com.intellij.psi.xml.XmlAttributeValue;
+import com.intellij.testFramework.LightProjectDescriptor;
 import com.intellij.testFramework.UsefulTestCase;
 import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
+import org.jetbrains.annotations.NotNull;
 import org.jetbrains.plugins.grails.fileType.GspFileType;
 import org.jetbrains.plugins.groovy.GroovyLanguage;
+import org.jetbrains.plugins.groovy.GroovyProjectDescriptors;
 import 
org.jetbrains.plugins.groovy.codeInspection.untypedUnresolvedAccess.GrUnresolvedAccessInspection;
 import org.jetbrains.plugins.groovy.grails.GrailsTestCase;
 import org.junit.Assert;
 
 public class GspResolveIndexesTest extends LightJavaCodeInsightFixtureTestCase 
{
+  @Override
+  protected @NotNull LightProjectDescriptor getProjectDescriptor() {
+    return GroovyProjectDescriptors.MOCK_JDK_11;
+  }
+
   private PsiElement getElementAtCaret() {
     int caret = myFixture.getEditor().getCaretModel().getOffset();
     return myFixture.getFile().getViewProvider().findElementAt(caret, 
GroovyLanguage.INSTANCE);
diff --git 
a/test/org/jetbrains/plugins/groovy/grails/gsp/GstringAttributeTest.java 
b/test/org/jetbrains/plugins/groovy/grails/gsp/GstringAttributeTest.java
index c8c90a0..5c4352d 100644
--- a/test/org/jetbrains/plugins/groovy/grails/gsp/GstringAttributeTest.java
+++ b/test/org/jetbrains/plugins/groovy/grails/gsp/GstringAttributeTest.java
@@ -17,11 +17,19 @@
 package org.jetbrains.plugins.groovy.grails.gsp;
 
 import com.intellij.psi.PsiFile;
+import com.intellij.testFramework.LightProjectDescriptor;
 import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase;
+import org.jetbrains.annotations.NotNull;
 import org.jetbrains.plugins.groovy.GroovyLanguage;
+import org.jetbrains.plugins.groovy.GroovyProjectDescriptors;
 import org.jetbrains.plugins.groovy.grails.GrailsTestCase;
 
 public class GstringAttributeTest extends LightJavaCodeInsightFixtureTestCase {
+  @Override
+  protected @NotNull LightProjectDescriptor getProjectDescriptor() {
+    return GroovyProjectDescriptors.MOCK_JDK_11;
+  }
+
   public void testHighlight() {
     myFixture.configureByText("a.gsp", """
       <g:link action="\\$" />
diff --git 
a/testFramework/src/org/jetbrains/plugins/groovy/GroovyProjectDescriptors.java 
b/testFramework/src/org/jetbrains/plugins/groovy/GroovyProjectDescriptors.java
index d466ab5..8c89489 100644
--- 
a/testFramework/src/org/jetbrains/plugins/groovy/GroovyProjectDescriptors.java
+++ 
b/testFramework/src/org/jetbrains/plugins/groovy/GroovyProjectDescriptors.java
@@ -23,6 +23,12 @@ import 
com.intellij.testFramework.fixtures.DefaultLightProjectDescriptor;
 
 public interface GroovyProjectDescriptors {
 
+    // Since IntelliJ 2026.2 the legacy filesystem Mock JDK 1.7 (the default 
for
+    // DefaultLightProjectDescriptor / LightJavaCodeInsightFixtureTestCase) is 
no longer shipped, so
+    // java.lang.*/java.util.* stop resolving. Tests that only need a JDK (not 
a Groovy library) can
+    // use this descriptor, which pins Mock JDK 11 (provisioned from the 
artifacts repository).
+    LightProjectDescriptor MOCK_JDK_11 = new 
DefaultLightProjectDescriptor(IdeaTestUtil::getMockJdk11);
+
     TestLibrary LIB_GROOVY_1_6 = new 
RepositoryTestLibrary("org.codehaus.groovy:groovy:1.6.9");
     TestLibrary LIB_GROOVY_1_7 = new 
RepositoryTestLibrary("org.codehaus.groovy:groovy:1.7.11");
     TestLibrary LIB_GROOVY_2_1 = new 
RepositoryTestLibrary("org.codehaus.groovy:groovy-all:2.1.0");

Reply via email to