testlens-app[bot] commented on PR #15656: URL: https://github.com/apache/grails-core/pull/15656#issuecomment-4500710367
## 🚨 TestLens detected 12 failed tests 🚨 Here is what you can do: 1) Inspect the test failures carefully. 2) If you are convinced that some of the tests are flaky, you can mute them below. 3) Finally, trigger a rerun by checking the rerun checkbox. ### Test Summary | Check | Project/Task | Test | Runs | |---|---|---|---| | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-cache:test | CacheTagLibSpec | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-cache:test | CacheableParseSpec > test include tenant id when used with \@CurrentTenant and \@Transactional | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-converters:test | DomainClassMarshallerSpec > Test DomainClassMarshaller\'s should maintain order of relations > Test DomainClassMarshaller\'s should maintain order of relations [authors: [org.grails.web.converters.marshaller.json.Author : 1, org.grails.web.converters.marshaller.json.Author : 2], expectedJson: \{\'id\':1,\'authorsSet\': [\{\'id\':1,\'name\': \'a\'\},\{\'id\':2,\'name\': \'b\'\}],\'authorsMap\': \{\'a\':\{\'id\':1,\'name\': \'a\'\},\'b\': \{\'id\':2,\'name\': \'b\'\}\}\}, expectedXml: \<\?xml version\=\'1.0\' encoding\=\'UTF-8\'\?\>\<book id\=\'1\'\>\<authorsSet\>\<author id\=\'1\'\>\<name\>a\</name\>\</author\>\<author id\=\'2\'\>\<name\>b\</name\>\</author\>\</authorsSet\>\<authorsMap\>\<… | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-converters:test | DomainClassMarshallerSpec > Test DomainClassMarshaller\'s should maintain order of relations > Test DomainClassMarshaller\'s should maintain order of relations [authors: [org.grails.web.converters.marshaller.json.Author : 2, org.grails.web.converters.marshaller.json.Author : 1], expectedJson: \{\'id\':1,\'authorsSet\': [\{\'id\':1,\'name\': \'b\'\},\{\'id\':2,\'name\': \'a\'\}],\'authorsMap\': \{\'b\':\{\'id\':1,\'name\': \'b\'\},\'a\': \{\'id\':2,\'name\': \'a\'\}\}\}, expectedXml: \<\?xml version\=\'1.0\' encoding\=\'UTF-8\'\?\>\<book id\=\'1\'\>\<authorsSet\>\<author id\=\'1\'\>\<name\>b\</name\>\</author\>\<author id\=\'2\'\>\<name\>a\</name\>\</author\>\</authorsSet\>\<authorsMap\>\<… | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-converters:test | DomainClassMarshallerSpec > test marshaller should render the ID properly | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-converters:test | DomainClassMarshallerSpec > test marshallers generate class names when options are set > test marshallers generate class names when options are set [authors: [org.grails.web.converters.marshaller.json.Author : 1, org.grails.web.converters.marshaller.json.Author : 2], expectedJson: \{\'class\':\'org.grails.web.converters.marshaller.json.Book\',\'id\': 1,\'authorsSet\': [\{\'class\':\'org.grails.web.converters.marshaller.json.Author\',\'id\': 1,\'name\': \'a\'\},\{\'class\':\'org.grails.web.converters.marshaller.json.Author\',\'id\': 2,\'name\': \'b\'\}],\'authorsMap\': \{\'a\':\{\'class\':\'org.grails.web.converters.marshaller.json.Aut… | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-core:test | PluginDiscoverySpec > returns no plugin or provided classes when plugin XML has no matching elements | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-core:test | StackTracePrinterSpec > Test pretty print code snippet | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-core:test | StackTracePrinterSpec > Test pretty print nested exception code snippet | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-core:test | StackTracePrinterSpec > Test pretty print simple stack trace | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-converters:test | StaticPropertySpec > static property should be excluded | ❌ | | [CI / Build Grails-Core \(macos-latest, 21\)](https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656) | :grails-converters:test | ValidationErrorsMarshallerSpec > Test marshalObject handles org.springframework.validation.ObjectError | ❌ | 🏷️ Commit: 2f7b39623cbed3f044ae39f24531083176ffba59 ▶️ Tests: 1048 executed 🟡 Checks: 3/33 completed ### Test Failures (first 5 of 12) <details> <summary><strong>CacheTagLibSpec</strong> (:grails-cache:test in <a href="https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656">CI / Build Grails-Core (macos-latest, 21)</a>)</summary> ``` org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 9; Element type "context" must be followed by either attribute specifications, ">" or "/>". at java.xml/com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:204) at java.xml/com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:178) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:400) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:327) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1465) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.seekCloseOfStartTag(XMLDocumentFragmentScannerImpl.java:1443) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:244) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:615) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3079) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:836) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:114) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542) at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889) at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825) at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at java.xml/com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:247) at java.xml/com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:342) at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:77) at grails.spring.DynamicElementReader.invokeMethod(DynamicElementReader.groovy:127) at org.grails.testing.GrailsApplicationBuilder.registerBeans_closure5(GrailsApplicationBuilder.groovy:224) at groovy.lang.Closure.call(Closure.java:433) at groovy.lang.Closure.call(Closure.java:412) at grails.spring.BeanBuilder.invokeBeanDefiningClosure(BeanBuilder.java:765) at grails.spring.BeanBuilder.beans(BeanBuilder.java:594) at org.grails.testing.GrailsApplicationBuilder.defineBeans(GrailsApplicationBuilder.groovy:210) at org.grails.testing.GrailsApplicationBuilder.registerBeans(GrailsApplicationBuilder.groovy:217) at org.grails.testing.GrailsApplicationBuilder.registerGrailsAppPostProcessorBean_closure6(GrailsApplicationBuilder.groovy:241) at grails.spring.BeanBuilder.invokeBeanDefiningClosure(BeanBuilder.java:765) at grails.spring.BeanBuilder.beans(BeanBuilder.java:594) at grails.boot.config.GrailsApplicationPostProcessor.postProcessBeanDefinitionRegistry(GrailsApplicationPostProcessor.groovy:231) at org.grails.testing.GrailsApplicationBuilder$TestRuntimeGrailsApplicationPostProcessor.postProcessBeanDefinitionRegistry(GrailsApplicationBuilder.groovy:287) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:349) at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:148) at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:795) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:603) at org.grails.testing.GrailsApplicationBuilder.createMainContext(GrailsApplicationBuilder.groovy:175) at org.grails.testing.GrailsApplicationBuilder.build(GrailsApplicationBuilder.groovy:88) at org.grails.testing.GrailsUnitTest$Trait$Helper.getGrailsApplication(GrailsUnitTest.groovy:76) at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:73) at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66) at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:101) at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:156) at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) ``` </details> <details> <summary><strong>CacheableParseSpec > test include tenant id when used with @CurrentTenant and @Transactional</strong> (:grails-cache:test in <a href="https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656">CI / Build Grails-Core (macos-latest, 21)</a>)</summary> ``` java.lang.IllegalStateException: No GORM implementations configured. Ensure GORM has been initialized correctly at org.grails.datastore.gorm.GormRegistry.findSingleTransactionManager(GormRegistry.groovy:189) at TestService.multiply_closure1(Script1.groovy) at groovy.lang.Closure.call(Closure.java:433) at groovy.lang.Closure.call(Closure.java:422) at grails.gorm.multitenancy.Tenants.executeCallable(Tenants.groovy:320) at grails.gorm.multitenancy.Tenants.withId_closure4(Tenants.groovy:299) at grails.gorm.multitenancy.CurrentTenantHolder.withTenant(CurrentTenantHolder.groovy:90) at grails.gorm.multitenancy.Tenants.withId(Tenants.groovy:298) at org.grails.datastore.gorm.services.DefaultTenantService.withCurrent(DefaultTenantService.groovy:94) at grails.plugin.cache.CacheableParseSpec.test include tenant id when used with @CurrentTenant and @Transactional(CacheableParseSpec.groovy:140) ``` </details> <details> <summary><strong>DomainClassMarshallerSpec > Test DomainClassMarshaller's should maintain order of relations > Test DomainClassMarshaller's should maintain order of relations [authors: [org.grails.web.converters.marshaller.json.Author : 1, org.grails.web.converters.marshaller.json.Author : 2], expectedJson: {'id':1,'authorsSet': [{'id':1,'name': 'a'},{'id':2,'name': 'b'}],'authorsMap': {'a':{'id':1,'name': 'a'},'b': {'id':2,'name': 'b'}}}, expectedXml: <?xml version='1.0' encoding='UTF-8'?><book id='1'><authorsSet><author id='1'><name>a</name></author><author id='2'><name>b</name></author></authorsSet><authorsMap><…</strong> (:grails-converters:test in <a href="https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656">CI / Build Grails-Core (macos-latest, 21)</a>)</summary> ``` Condition not satisfied: json.toString() == expectedJson | | | | | | | {'id':1,'authorsSet': [{'id':1,'name': 'a'},{'id':2,'name': 'b'}],'authorsMap': {'a':{'id':1,'name': 'a'},'b': {'id':2,'name': 'b'}}} | | false | | 41 differences (69% similarity) | | {(")id("):1,(")authorsSet("):(-)[{(")id("):1,(")name("):("-)a(")},{(")id("):2,(")name("):("-)b(")}],(")authorsMap("):(-){(")a("):{(")id("):1,(")name("):("-)a(")},(")b("):(-){(")id("):2,(")name("):("-)b(")}}} | | {(')id('):1,(')authorsSet('):( )[{(')id('):1,(')name('):( ')a(')},{(')id('):2,(')name('):( ')b(')}],(')authorsMap('):( ){(')a('):{(')id('):1,(')name('):( ')a(')},(')b('):( ){(')id('):2,(')name('):( ')b(')}}} | {"id":1,"authorsSet":[{"id":1,"name":"a"},{"id":2,"name":"b"}],"authorsMap":{"a":{"id":1,"name":"a"},"b":{"id":2,"name":"b"}}} {"id":1,"authorsSet":[{"id":1,"name":"a"},{"id":2,"name":"b"}],"authorsMap":{"a":{"id":1,"name":"a"},"b":{"id":2,"name":"b"}}} at org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec.Test DomainClassMarshaller's should maintain order of relations(DomainClassMarshallerSpec.groovy:80) ``` |expected|actual| |---|---| |<s>{'id':</s>1<s>,'authorsSet': [{'id':</s>1<s>,'name': 'a'},{'id':</s>2<s>,'name': 'b'}],'authorsMap': {'a':{'id':</s>1<s>,'name': 'a'},'b': {'id':</s>2<s>,'name': 'b'}}}</s>|<b>{"id":</b>1<b>,"authorsSet":[{"id":</b>1<b>,"name":"a"},{"id":</b>2<b>,"name":"b"}],"authorsMap":{"a":{"id":</b>1<b>,"name":"a"},"b":{"id":</b>2<b>,"name":"b"}}}</b>| </details> <details> <summary><strong>DomainClassMarshallerSpec > Test DomainClassMarshaller's should maintain order of relations > Test DomainClassMarshaller's should maintain order of relations [authors: [org.grails.web.converters.marshaller.json.Author : 2, org.grails.web.converters.marshaller.json.Author : 1], expectedJson: {'id':1,'authorsSet': [{'id':1,'name': 'b'},{'id':2,'name': 'a'}],'authorsMap': {'b':{'id':1,'name': 'b'},'a': {'id':2,'name': 'a'}}}, expectedXml: <?xml version='1.0' encoding='UTF-8'?><book id='1'><authorsSet><author id='1'><name>b</name></author><author id='2'><name>a</name></author></authorsSet><authorsMap><…</strong> (:grails-converters:test in <a href="https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656">CI / Build Grails-Core (macos-latest, 21)</a>)</summary> ``` Condition not satisfied: json.toString() == expectedJson | | | | | | | {'id':1,'authorsSet': [{'id':1,'name': 'b'},{'id':2,'name': 'a'}],'authorsMap': {'b':{'id':1,'name': 'b'},'a': {'id':2,'name': 'a'}}} | | false | | 41 differences (69% similarity) | | {(")id("):1,(")authorsSet("):(-)[{(")id("):1,(")name("):("-)b(")},{(")id("):2,(")name("):("-)a(")}],(")authorsMap("):(-){(")b("):{(")id("):1,(")name("):("-)b(")},(")a("):(-){(")id("):2,(")name("):("-)a(")}}} | | {(')id('):1,(')authorsSet('):( )[{(')id('):1,(')name('):( ')b(')},{(')id('):2,(')name('):( ')a(')}],(')authorsMap('):( ){(')b('):{(')id('):1,(')name('):( ')b(')},(')a('):( ){(')id('):2,(')name('):( ')a(')}}} | {"id":1,"authorsSet":[{"id":1,"name":"b"},{"id":2,"name":"a"}],"authorsMap":{"b":{"id":1,"name":"b"},"a":{"id":2,"name":"a"}}} {"id":1,"authorsSet":[{"id":1,"name":"b"},{"id":2,"name":"a"}],"authorsMap":{"b":{"id":1,"name":"b"},"a":{"id":2,"name":"a"}}} at org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec.Test DomainClassMarshaller's should maintain order of relations(DomainClassMarshallerSpec.groovy:80) ``` |expected|actual| |---|---| |<s>{'id':</s>1<s>,'authorsSet': [{'id':</s>1<s>,'name': 'b'},{'id':</s>2<s>,'name': 'a'}],'authorsMap': {'b':{'id':</s>1<s>,'name': 'b'},'a': {'id':</s>2<s>,'name': 'a'}}}</s>|<b>{"id":</b>1<b>,"authorsSet":[{"id":</b>1<b>,"name":"b"},{"id":</b>2<b>,"name":"a"}],"authorsMap":{"b":{"id":</b>1<b>,"name":"b"},"a":{"id":</b>2<b>,"name":"a"}}}</b>| </details> <details> <summary><strong>DomainClassMarshallerSpec > test marshaller should render the ID properly</strong> (:grails-converters:test in <a href="https://github.com/apache/grails-core/actions/runs/26176946144/job/77009407709?pr=15656">CI / Build Grails-Core (macos-latest, 21)</a>)</summary> ``` Condition failed with Exception: jsonString.contains(''newId':3') | | | groovy.lang.MissingPropertyException: No such property: newId for class: org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec | at org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec.test marshaller should render the ID properly(DomainClassMarshallerSpec.groovy:96) {"newId":3,"name":"Sally","version":null} at org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec.test marshaller should render the ID properly(DomainClassMarshallerSpec.groovy:96) Caused by: groovy.lang.MissingPropertyException: No such property: newId for class: org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec ... 1 more ``` </details> ### Muted Tests > [!NOTE] > Checks are currently running using the configuration below. Select tests to mute in this pull request: 🔲 CacheTagLibSpec <!-- uniqueId=[engine:spock]/[spec:grails.plugin.cache.CacheTagLibSpec] --> 🔲 CacheableParseSpec > test include tenant id when used with \@CurrentTenant and \@Transactional <!-- uniqueId=[engine:spock]/[spec:grails.plugin.cache.CacheableParseSpec]/[feature:$spock_feature_0_2] --> 🔲 DomainClassMarshallerSpec > Test DomainClassMarshaller\'s should maintain order of relations <!-- uniqueId=[engine:spock]/[spec:org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec]/[feature:$spock_feature_0_0] --> 🔲 DomainClassMarshallerSpec > test marshaller should render the ID properly <!-- uniqueId=[engine:spock]/[spec:org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec]/[feature:$spock_feature_0_1] --> 🔲 DomainClassMarshallerSpec > test marshallers generate class names when options are set <!-- uniqueId=[engine:spock]/[spec:org.grails.web.converters.marshaller.json.DomainClassMarshallerSpec]/[feature:$spock_feature_0_2] --> 🔲 PluginDiscoverySpec > returns no plugin or provided classes when plugin XML has no matching elements <!-- uniqueId=[engine:spock]/[spec:org.apache.grails.core.plugins.PluginDiscoverySpec]/[feature:$spock_feature_0_11] --> 🔲 StackTracePrinterSpec > Test pretty print code snippet <!-- uniqueId=[engine:spock]/[spec:org.grails.exception.reporting.StackTracePrinterSpec]/[feature:$spock_feature_0_3] --> 🔲 StackTracePrinterSpec > Test pretty print nested exception code snippet <!-- uniqueId=[engine:spock]/[spec:org.grails.exception.reporting.StackTracePrinterSpec]/[feature:$spock_feature_0_4] --> 🔲 StackTracePrinterSpec > Test pretty print simple stack trace <!-- uniqueId=[engine:spock]/[spec:org.grails.exception.reporting.StackTracePrinterSpec]/[feature:$spock_feature_0_0] --> 🔲 StaticPropertySpec > static property should be excluded <!-- uniqueId=[engine:spock]/[spec:org.grails.web.converters.marshaller.json.StaticPropertySpec]/[feature:$spock_feature_0_0] --> 🔲 ValidationErrorsMarshallerSpec > Test marshalObject handles org.springframework.validation.ObjectError <!-- uniqueId=[engine:spock]/[spec:org.grails.web.converters.marshaller.json.ValidationErrorsMarshallerSpec]/[feature:$spock_feature_0_0] --> Reuse successful test results: 🔲 ♻️ Only rerun the tests that failed or were muted before Click the checkbox to trigger a rerun: 🔲 **Rerun jobs** --- _Learn more about TestLens at [testlens.app](https://testlens.app)._ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
