Skip to content

Modernize MIME negotiation and serialization for Spring Boot 4.1 - #16237

Draft
codeconsole wants to merge 36 commits into
apache:8.0.xfrom
codeconsole:feature/spring-media-type-negotiation-8.0.x
Draft

Modernize MIME negotiation and serialization for Spring Boot 4.1#16237
codeconsole wants to merge 36 commits into
apache:8.0.xfrom
codeconsole:feature/spring-media-type-negotiation-8.0.x

Conversation

@codeconsole

@codeconsole codeconsole commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Summary

  • bridge Grails MIME types to Spring MediaType and integrate negotiation with Spring MVC
  • remove static MIME negotiation state and resolve strategy bean ambiguity
  • use Spring MVC message converters and the Boot JsonMapper for ordinary JSON responses, with legacy compatibility fallbacks
  • replace named legacy JSON configuration with an injectable, request-safe Jackson registry shared by render, respond, and direct serialization
  • extract XML HTTP payload support into the optional grails-xml module without changing XML plugin descriptors
  • select XML converters from Spring MVC, keep new REST artefacts JSON-only by default, and preserve secure legacy XML compatibility
  • render REST validation errors as RFC 9457 application/problem+json; keep Vnd.Error opt-in and deprecate legacy XML error formats
  • add an optional grails-spring-hateoas adapter module, deprecate HAL XML, and keep Atom/feed rendering opt-in
  • statically compile changed production Groovy paths; Java additions use the Java 21 baseline

Lines of code

Area Added Removed Net Deprecated Net after deprecated removal
Production 1,790 220 +1,570 574 +996
Tests 1,715 194 +1,521 0 +1,521
Documentation 612 37 +575 0 +575
Total 4,117 451 +3,666 574 +3,092

Added and removed counts come from git diff --numstat upstream/8.0.x...HEAD; pure renames count as zero. Test sources are counted as tests. grails-doc and Markdown files are counted as documentation. Build/module wiring is counted as production.

Tests and documentation account for +2,096 LOC. Production is +1,570 net before future deprecated-code removal and +996 afterward. The remaining production growth implements Spring MVC negotiation/converter bridges, named Jackson configurations, Jackson domain compatibility, Problem Details, the optional XML boundary, and the optional Spring HATEOAS adapter.

The deprecated count is current source covered by @Deprecated(since = "8.0", forRemoval = false): the legacy JSON configuration/marshaller API blocks plus Vnd.Error XML, legacy XML validation marshalling, and HAL XML renderer classes. These remain supported on 8.0.x for a deprecation cycle.

Compatibility and migration

  • Plugin descriptors remain XML and are unaffected; grails-xml controls application HTTP XML payload support only.
  • NamedJsonConfigurationRegistry replaces JSON.createNamedConfig(...) and JSON.use(...) for named registration and direct serialization.
  • render value, jsonConfiguration: 'deep' and respond value, jsonConfiguration: 'deep' select the same registered Jackson configuration.
  • Legacy named JSON configurations remain supported as a fallback while their APIs are deprecated.
  • Per-response include/exclude projections retain the legacy converter path.
  • Applications can explicitly register Vnd.Error JSON, XML compatibility renderers, HAL renderers, and Atom renderers.
  • New REST artefacts advertise JSON only. XML endpoints add grails-xml and opt the artefact into XML.

Verification

Scoped affected-module tests, checks, dependency validation, profile builds, and guide builds passed with --max-workers=2. The final named-Jackson change ran all tests and checks for grails-web-common, grails-converters, grails-controllers, and grails-rest-transforms, plus the Grails guide build.

A full repository sweep was intentionally not run on the development machine because of its resource constraints; broader validation is left to CI.

@codecov

codecov Bot commented Aug 28, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 5 lines in your changes missing coverage. Please review.
✅ Project coverage is 30.1520%. Comparing base (4309d5b) to head (82fe9d8).

Files with missing lines Patch % Lines
...in/groovy/org/grails/io/support/SpringIOUtils.java 0.0000% 5 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@                 Coverage Diff                 @@
##                8.0.x     #16237         +/-   ##
===================================================
- Coverage     54.7149%   30.1520%   -24.5629%     
+ Complexity      20421        517      -19904     
===================================================
  Files            2101         81       -2020     
  Lines          100978       4736      -96242     
  Branches        17907        816      -17091     
===================================================
- Hits            55250       1428      -53822     
+ Misses          37860       3065      -34795     
+ Partials         7868        243       -7625     
Files with missing lines Coverage Δ
...in/groovy/org/grails/io/support/SpringIOUtils.java 3.3784% <0.0000%> (ø)

... and 2020 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@codeconsole

Copy link
Copy Markdown
Contributor Author

Deprecation migration examples

This comment maps every API deprecated by this PR to its modern replacement. Overloads are grouped where their migration is identical.

The XML migrations intentionally change the response representation to JSON. The deprecated XML implementations remain available in grails-xml for clients that cannot migrate immediately.

1. JSON.registerObjectMarshaller(...) (all four overloads)

This covers (Class, Closure), (Class, int, Closure), (ObjectMarshaller), and (ObjectMarshaller, int).

Before:

JSON.registerObjectMarshaller(Book, 100) { Book book ->
    [id: book.id, title: book.title]
}

After, for an application-wide Jackson representation:

import org.springframework.boot.jackson.autoconfigure.JsonMapperBuilderCustomizer
import org.springframework.context.annotation.Bean
import tools.jackson.databind.module.SimpleModule

@Bean
JsonMapperBuilderCustomizer bookJsonCustomizer() {
    { builder ->
        builder.addModule(new SimpleModule()
                .addSerializer(Book, new BookValueSerializer()))
    } as JsonMapperBuilderCustomizer
}

BookValueSerializer is a Jackson 3 ValueSerializer<Book>. Jackson module registration replaces legacy marshaller priority; serializer/module ordering should be made explicit when serializers overlap.

2. JSON.withDefaultConfiguration(...)

Before:

JSON.withDefaultConfiguration {
    it.registerObjectMarshaller(Book) { Book book ->
        [id: book.id, title: book.title]
    }
}

After:

@Bean
JsonMapperBuilderCustomizer bookJsonCustomizer() {
    { builder ->
        builder.addModule(new SimpleModule()
                .addSerializer(Book, new BookValueSerializer()))
    } as JsonMapperBuilderCustomizer
}

This customizes Spring Boot's managed JsonMapper, so the representation is shared by respond, Spring MVC message conversion, and other Jackson integrations.

3. JSON.createNamedConfig(...)

Before:

JSON.createNamedConfig('deep') {
    it.registerObjectMarshaller(Type, deepObjectMarshaller)
    it.registerObjectMarshaller(Category, deepObjectMarshaller)
}

After:

import grails.converters.json.NamedJsonConfigurationRegistry

class BootStrap {
    NamedJsonConfigurationRegistry namedJsonConfigurationRegistry

    def init = { servletContext ->
        namedJsonConfigurationRegistry.register('deep') {
            it.serializer(Type, new TypeValueSerializer())
            it.serializer(Category, new CategoryValueSerializer())
        }
    }
}

The named configuration derives an isolated mapper from Boot's configured JsonMapper; it does not mutate global or thread-local converter state.

4. JSON.use(String, Closure)

Before:

String json = JSON.use('deep') {
    new JSON(book).toString()
}

After, for direct serialization:

String json = namedJsonConfigurationRegistry.writeValueAsString('deep', book)

Or stream directly:

namedJsonConfigurationRegistry.writeValue('deep', writer, book)

For controller responses, the same configuration works with both APIs:

render book, jsonConfiguration: 'deep'
respond book, jsonConfiguration: 'deep'

5. JSON.use(String)

Before:

JSON.use('deep')
try {
    String json = new JSON(book).toString()
} finally {
    JSON.use('default')
}

After:

String json = namedJsonConfigurationRegistry.writeValueAsString('deep', book)

Configuration is selected explicitly per operation, eliminating mutable thread-local state.

6. JSON.getNamedConfig(String)

Before:

def configuration = JSON.getNamedConfig('deep')

After:

ObjectWriter writer = namedJsonConfigurationRegistry.writer('deep')
String json = writer.writeValueAsString(book)

Registration remains encapsulated in NamedJsonConfigurationRegistry.register(...); consumers receive the configured, immutable-style Jackson writer used for serialization.

7. HalXmlRenderer

Before:

import grails.rest.render.hal.HalXmlRenderer

beans = {
    halBookRenderer(HalXmlRenderer, Book)
}

After, using Grails HAL JSON:

import grails.rest.render.hal.HalJsonRenderer

beans = {
    halBookRenderer(HalJsonRenderer, Book)
}

Clients negotiate it with:

Accept: application/hal+json

Applications that prefer Spring's hypermedia model can instead add the optional grails-spring-hateoas module.

8. HalXmlCollectionRenderer

Before:

import grails.rest.render.hal.HalXmlCollectionRenderer

beans = {
    halBooksRenderer(HalXmlCollectionRenderer, Book)
}

After:

import grails.rest.render.hal.HalJsonCollectionRenderer

beans = {
    halBooksRenderer(HalJsonCollectionRenderer, Book)
}

Clients use Accept: application/hal+json rather than application/hal+xml.

9. VndErrorXmlRenderer

Before:

import grails.rest.render.errors.VndErrorXmlRenderer

beans = {
    vndXmlErrorRenderer(VndErrorXmlRenderer)
}

// Client: Accept: application/vnd.error+xml
respond book.errors

After, using the default RFC 9457 validation response:

// No Vnd.Error renderer registration is required.
// Client: Accept: application/json or application/problem+json
respond book.errors

The response uses application/problem+json and status 422 for validation failures.

10. XML ValidationErrorsMarshaller

Before:

import grails.converters.XML
import org.grails.web.converters.marshaller.xml.ValidationErrorsMarshaller

XML.registerObjectMarshaller(new ValidationErrorsMarshaller(), 100)
render book.errors as XML

After:

// Client: Accept: application/json or application/problem+json
respond book.errors

Grails renders the validation errors as RFC 9457 application/problem+json. Keep the deprecated marshaller only while an existing client still requires the legacy XML error schema.

@testlens-app

testlens-app Bot commented Aug 30, 2026

Copy link
Copy Markdown

🚨 TestLens detected 3270 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

CI / Build Grails-Core (Ubuntu JDK 21) > :grails-cache:test

Test Runs Flakiness
CacheTagLibSpec 0% 🟢

CI / Build Grails-Core (Ubuntu JDK 21) > :grails-data-graphql:test

Test Runs Flakiness
GraphqlControllerSpec 0% 🟢

CI / Build Grails-Core (Ubuntu JDK 21) > :grails-gsp:test (first 40 of 50)

Test Runs Flakiness
AliasedTagPropertySpec 0% 🟢
ApplicationTagLibResourcesTests 0% 🟢
ApplicationTagLibTests 0% 🟢
ApplyCodecTagSpec 0% 🟢
CompiledTagCallRewriterSpec 0% 🟢
CompiledTagInvocationSpec 0% 🟢
ControllerCompileStaticTagLibSpec 0% 🟢
ControllerTagLibMethodDispatchSpec 0% 🟢
ControllerTagLibMethodInheritanceSpec 0% 🟢
CountryTagLibTests 0% 🟢
FormTagLibResourceTests 0% 🟢
FormTagLibTests 0% 🟢
FormTagLibWithConfigSpec 0% 🟢
FormatTagLibSpec 0% 🟢
GroovyPageLineNumberTests 0% 🟢
GroovyPageRenderingTests 0% 🟢
GroovyPageWithJSPTagsTests 0% 🟢
InvokeTagLibWithBodyAsMethodTests 0% 🟢
InvokeTagWithCustomBodyClosureSpec 0% 🟢
LayoutWriterStackTests 0% 🟢
LinkRenderingTagLib2Tests 0% 🟢
LinkRenderingTagLibTests 0% 🟢
LocaleSelectAvailableSpec 0% 🟢
LocaleSelectConfiguredDefaultSpec 0% 🟢
LocaleSelectPinnedVariantSpec 0% 🟢
LocaleSelectRenderingSpec 0% 🟢
MethodDefinedTagLibSpec 0% 🟢
MethodVsClosureTagInvocationBenchmarkSpec 0% 🟢
ModifyOurScopeWithBodyTagTests 0% 🟢
NamedTagBodyParamsTests 0% 🟢
NamespaceInferenceTagLibSpec 0% 🟢
NamespacedNamedUrlMappingTests 0% 🟢
NamespacedTagLibMethodTests 0% 🟢
NamespacedTagLibRenderMethodTests 0% 🟢
OptionalTagBodySpec 0% 🟢
OverlappingReverseMappedLinkTests 0% 🟢
PageScopeSpec 0% 🟢
PageScopeTagTests 0% 🟢
RenderTagLibTests 0% 🟢
RestfulReverseUrlRenderingTests 0% 🟢

CI / Build Grails-Core (Ubuntu JDK 21) > :grails-mail:test

Test Runs Flakiness
PlainTextMailTagLibSpec 0% 🟢

CI / Build Grails-Core (Ubuntu JDK 25) > :grails-cache:test

Test Runs Flakiness
CacheTagLibSpec 0% 🟢

CI / Build Grails-Core (Ubuntu JDK 25) > :grails-data-graphql:test

Test Runs Flakiness
GraphqlControllerSpec 0% 🟢

CI / Build Grails-Core (Ubuntu JDK 25) > :grails-gsp:test (first 40 of 50)

Test Runs Flakiness
AliasedTagPropertySpec 0% 🟢
ApplicationTagLibResourcesTests 0% 🟢
ApplicationTagLibTests 0% 🟢
ApplyCodecTagSpec 0% 🟢
CompiledTagCallRewriterSpec 0% 🟢
CompiledTagInvocationSpec 0% 🟢
ControllerCompileStaticTagLibSpec 0% 🟢
ControllerTagLibMethodDispatchSpec 0% 🟢
ControllerTagLibMethodInheritanceSpec 0% 🟢
CountryTagLibTests 0% 🟢
FormTagLibResourceTests 0% 🟢
FormTagLibTests 0% 🟢
FormTagLibWithConfigSpec 0% 🟢
FormatTagLibSpec 0% 🟢
GroovyPageLineNumberTests 0% 🟢
GroovyPageRenderingTests 0% 🟢
GroovyPageWithJSPTagsTests 0% 🟢
InvokeTagLibWithBodyAsMethodTests 0% 🟢
InvokeTagWithCustomBodyClosureSpec 0% 🟢
LayoutWriterStackTests 0% 🟢
LinkRenderingTagLib2Tests 0% 🟢
LinkRenderingTagLibTests 0% 🟢
LocaleSelectAvailableSpec 0% 🟢
LocaleSelectConfiguredDefaultSpec 0% 🟢
LocaleSelectPinnedVariantSpec 0% 🟢
LocaleSelectRenderingSpec 0% 🟢
MethodDefinedTagLibSpec 0% 🟢
MethodVsClosureTagInvocationBenchmarkSpec 0% 🟢
ModifyOurScopeWithBodyTagTests 0% 🟢
NamedTagBodyParamsTests 0% 🟢
NamespaceInferenceTagLibSpec 0% 🟢
NamespacedNamedUrlMappingTests 0% 🟢
NamespacedTagLibMethodTests 0% 🟢
NamespacedTagLibRenderMethodTests 0% 🟢
OptionalTagBodySpec 0% 🟢
OverlappingReverseMappedLinkTests 0% 🟢
PageScopeSpec 0% 🟢
PageScopeTagTests 0% 🟢
RenderTagLibTests 0% 🟢
RestfulReverseUrlRenderingTests 0% 🟢

CI / Build Grails-Core (Ubuntu JDK 25) > :grails-mail:test

Test Runs Flakiness
PlainTextMailTagLibSpec 0% 🟢

CI / Build Grails-Core (Windows JDK 25 shard 0) > :grails-cache:test

Test Runs Flakiness
CacheTagLibSpec 0% 🟢

CI / Build Grails-Core (Windows JDK 25 shard 0) > :grails-data-graphql:test

Test Runs Flakiness
GraphqlControllerSpec 0% 🟢

CI / Build Grails-Core (Windows JDK 25 shard 1) > :grails-gsp:test (first 40 of 50)

Test Runs Flakiness
AliasedTagPropertySpec 0% 🟢
ApplicationTagLibResourcesTests 0% 🟢
ApplicationTagLibTests 0% 🟢
ApplyCodecTagSpec 0% 🟢
CompiledTagCallRewriterSpec 0% 🟢
CompiledTagInvocationSpec 0% 🟢
ControllerCompileStaticTagLibSpec 0% 🟢
ControllerTagLibMethodDispatchSpec 0% 🟢
ControllerTagLibMethodInheritanceSpec 0% 🟢
CountryTagLibTests 0% 🟢
FormTagLibResourceTests 0% 🟢
FormTagLibTests 0% 🟢
FormTagLibWithConfigSpec 0% 🟢
FormatTagLibSpec 0% 🟢
GroovyPageLineNumberTests 0% 🟢
GroovyPageRenderingTests 0% 🟢
GroovyPageWithJSPTagsTests 0% 🟢
InvokeTagLibWithBodyAsMethodTests 0% 🟢
InvokeTagWithCustomBodyClosureSpec 0% 🟢
LayoutWriterStackTests 0% 🟢
LinkRenderingTagLib2Tests 0% 🟢
LinkRenderingTagLibTests 0% 🟢
LocaleSelectAvailableSpec 0% 🟢
LocaleSelectConfiguredDefaultSpec 0% 🟢
LocaleSelectPinnedVariantSpec 0% 🟢
LocaleSelectRenderingSpec 0% 🟢
MethodDefinedTagLibSpec 0% 🟢
MethodVsClosureTagInvocationBenchmarkSpec 0% 🟢
ModifyOurScopeWithBodyTagTests 0% 🟢
NamedTagBodyParamsTests 0% 🟢
NamespaceInferenceTagLibSpec 0% 🟢
NamespacedNamedUrlMappingTests 0% 🟢
NamespacedTagLibMethodTests 0% 🟢
NamespacedTagLibRenderMethodTests 0% 🟢
OptionalTagBodySpec 0% 🟢
OverlappingReverseMappedLinkTests 0% 🟢
PageScopeSpec 0% 🟢
PageScopeTagTests 0% 🟢
RenderTagLibTests 0% 🟢
RestfulReverseUrlRenderingTests 0% 🟢

CI / Build Grails-Core (Windows JDK 25 shard 2) > :grails-mail:test

Test Runs Flakiness
PlainTextMailTagLibSpec 0% 🟢

CI / Build Grails-Core (macOS JDK 21) > :grails-cache:test

Test Runs Flakiness
CacheTagLibSpec 0% 🟢

CI / Build Grails-Core (macOS JDK 21) > :grails-data-graphql:test

Test Runs Flakiness
GraphqlControllerSpec 0% 🟢

CI / Build Grails-Core (macOS JDK 21) > :grails-gsp:test (first 40 of 50)

Test Runs Flakiness
AliasedTagPropertySpec 0% 🟢
ApplicationTagLibResourcesTests 0% 🟢
ApplicationTagLibTests 0% 🟢
ApplyCodecTagSpec 0% 🟢
CompiledTagCallRewriterSpec 0% 🟢
CompiledTagInvocationSpec 0% 🟢
ControllerCompileStaticTagLibSpec 0% 🟢
ControllerTagLibMethodDispatchSpec 0% 🟢
ControllerTagLibMethodInheritanceSpec 0% 🟢
CountryTagLibTests 0% 🟢
FormTagLibResourceTests 0% 🟢
FormTagLibTests 0% 🟢
FormTagLibWithConfigSpec 0% 🟢
FormatTagLibSpec 0% 🟢
GroovyPageLineNumberTests 0% 🟢
GroovyPageRenderingTests 0% 🟢
GroovyPageWithJSPTagsTests 0% 🟢
InvokeTagLibWithBodyAsMethodTests 0% 🟢
InvokeTagWithCustomBodyClosureSpec 0% 🟢
LayoutWriterStackTests 0% 🟢
LinkRenderingTagLib2Tests 0% 🟢
LinkRenderingTagLibTests 0% 🟢
LocaleSelectAvailableSpec 0% 🟢
LocaleSelectConfiguredDefaultSpec 0% 🟢
LocaleSelectPinnedVariantSpec 0% 🟢
LocaleSelectRenderingSpec 0% 🟢
MethodDefinedTagLibSpec 0% 🟢
MethodVsClosureTagInvocationBenchmarkSpec 0% 🟢
ModifyOurScopeWithBodyTagTests 0% 🟢
NamedTagBodyParamsTests 0% 🟢
NamespaceInferenceTagLibSpec 0% 🟢
NamespacedNamedUrlMappingTests 0% 🟢
NamespacedTagLibMethodTests 0% 🟢
NamespacedTagLibRenderMethodTests 0% 🟢
OptionalTagBodySpec 0% 🟢
OverlappingReverseMappedLinkTests 0% 🟢
PageScopeSpec 0% 🟢
PageScopeTagTests 0% 🟢
RenderTagLibTests 0% 🟢
RestfulReverseUrlRenderingTests 0% 🟢

CI / Build Grails-Core (macOS JDK 21) > :grails-mail:test

Test Runs Flakiness
PlainTextMailTagLibSpec 0% 🟢

CI / Build Grails-Core Rerunning all Tasks (Ubuntu JDK 21 shard 0) > :grails-cache:test

Test Runs Flakiness
CacheTagLibSpec 0% 🟢

CI / Build Grails-Core Rerunning all Tasks (Ubuntu JDK 21 shard 0) > :grails-data-graphql:test

Test Runs Flakiness
GraphqlControllerSpec 0% 🟢

CI / Build Grails-Core Rerunning all Tasks (Ubuntu JDK 21 shard 1) > :grails-gsp:test (first 40 of 50)

Test Runs Flakiness
AliasedTagPropertySpec 0% 🟢
ApplicationTagLibResourcesTests 0% 🟢
ApplicationTagLibTests 0% 🟢
ApplyCodecTagSpec 0% 🟢
CompiledTagCallRewriterSpec 0% 🟢
CompiledTagInvocationSpec 0% 🟢
ControllerCompileStaticTagLibSpec 0% 🟢
ControllerTagLibMethodDispatchSpec 0% 🟢
ControllerTagLibMethodInheritanceSpec 0% 🟢
CountryTagLibTests 0% 🟢
FormTagLibResourceTests 0% 🟢
FormTagLibTests 0% 🟢
FormTagLibWithConfigSpec 0% 🟢
FormatTagLibSpec 0% 🟢
GroovyPageLineNumberTests 0% 🟢
GroovyPageRenderingTests 0% 🟢
GroovyPageWithJSPTagsTests 0% 🟢
InvokeTagLibWithBodyAsMethodTests 0% 🟢
InvokeTagWithCustomBodyClosureSpec 0% 🟢
LayoutWriterStackTests 0% 🟢
LinkRenderingTagLib2Tests 0% 🟢
LinkRenderingTagLibTests 0% 🟢
LocaleSelectAvailableSpec 0% 🟢
LocaleSelectConfiguredDefaultSpec 0% 🟢
LocaleSelectPinnedVariantSpec 0% 🟢
LocaleSelectRenderingSpec 0% 🟢
MethodDefinedTagLibSpec 0% 🟢
MethodVsClosureTagInvocationBenchmarkSpec 0% 🟢
ModifyOurScopeWithBodyTagTests 0% 🟢
NamedTagBodyParamsTests 0% 🟢
NamespaceInferenceTagLibSpec 0% 🟢
NamespacedNamedUrlMappingTests 0% 🟢
NamespacedTagLibMethodTests 0% 🟢
NamespacedTagLibRenderMethodTests 0% 🟢
OptionalTagBodySpec 0% 🟢
OverlappingReverseMappedLinkTests 0% 🟢
PageScopeSpec 0% 🟢
PageScopeTagTests 0% 🟢
RenderTagLibTests 0% 🟢
RestfulReverseUrlRenderingTests 0% 🟢

CI / Build Grails-Core Rerunning all Tasks (Ubuntu JDK 21 shard 2) > :grails-mail:test

Test Runs Flakiness
PlainTextMailTagLibSpec 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-app4:integrationTest

Test Runs Flakiness
WildcardActionValidationFunctionalSpec > falls through invalid wildcard action mappings to the next match 0% 🟢
WildcardActionValidationFunctionalSpec > prefers explicit method mappings over wildcard optional action matches 0% 🟢
WildcardActionValidationFunctionalSpec > prefers literal path mappings over wildcard controller matches 0% 🟢
WildcardActionValidationFunctionalSpec > resolves wildcard action mappings to declared controller actions 0% 🟢
WildcardActionValidationFunctionalSpec > validates wildcard controller tokens against registered controllers 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-cache:integrationTest

Test Runs Flakiness
AdvancedCachingIntegrationSpec > custom key caching works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > different categories have separate list cache entries via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction by custom key works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction clears list cache via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction clears map cache via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction of all custom key cache works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > exception is thrown and not cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > list data is cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > map data is cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > successful calls are cached even after exceptions via HTTP 0% 🟢
CacheTagIntegrationSpec > test block tag 0% 🟢
CacheTagIntegrationSpec > test clear blocks cache 0% 🟢
CacheTagIntegrationSpec > test clear cache 0% 🟢
CacheTagIntegrationSpec > test expire blocks cache based on ttl 0% 🟢
CacheTagIntegrationSpec > test expire render cache based on ttl 0% 🟢
CacheTagIntegrationSpec > test render tag 0% 🟢
CachingServiceIntegrationSpec > test basic cache clear service 0% 🟢
CachingServiceIntegrationSpec > test basic cache evict all service 0% 🟢
CachingServiceIntegrationSpec > test basic cache evict key service 0% 🟢
CachingServiceIntegrationSpec > test basic cache put service 0% 🟢
CachingServiceIntegrationSpec > test basic caching service 0% 🟢
CachingServiceIntegrationSpec > test caching service with method params 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches > Verify max capacities set for configured caches [cacheName: bar, expectedCapacity: 200, #1] 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches > Verify max capacities set for configured caches [cacheName: foo, expectedCapacity: 100, #0] 0% 🟢
NotCachingControllerIntegrationSpec > test action controller with different parameters 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-config-report:integrationTest

Test Runs Flakiness
ConfigReportCommandIntegrationSpec > ConfigReportCommand generates a report file with hybrid format 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties bound via @ConfigurationProperties in Other Properties 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties from all three config sources 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties from application.groovy in Other Properties 0% 🟢
ConfigReportCommandIntegrationSpec > report escapes pipe characters from application.groovy values 0% 🟢
ConfigReportCommandIntegrationSpec > report puts custom application properties in Other Properties section 0% 🟢
ConfigReportCommandIntegrationSpec > report separates known metadata properties from custom properties 0% 🟢
ConfigReportCommandIntegrationSpec > report shows known Grails properties in metadata categories 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-database-cleanup:integrationTest

Test Runs Flakiness
ClassLevelCleanupSpec > test 1 - insert data and verify it was persisted 0% 🟢
MethodLevelCleanupSpec > test 1 - insert data with @DatabaseCleanup and explicit type on method 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-enable-mvc-check:integrationTest

Test Runs Flakiness
WebMvcDefaultsFunctionalSpec > a classpath:/public resource is not served at the context root 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded DELETE body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded PATCH body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded PUT body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded POST body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > locale resolution follows the Accept-Language header and the lang request parameter is ignored 0% 🟢
WebMvcDefaultsFunctionalSpec > no static index.html welcome page is served for the unmapped root path 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-external-configuration:integrationTest (first 40 of 49)

Test Runs Flakiness
ConfigurationPrioritySpec > TEST_HOME environment variable from build.gradle is accessible 0% 🟢
ConfigurationPrioritySpec > active profiles affect configuration 0% 🟢
ConfigurationPrioritySpec > application.yml configuration is loaded 0% 🟢
ConfigurationPrioritySpec > can list all property source names 0% 🟢
ConfigurationPrioritySpec > deeply nested properties are accessible 0% 🟢
ConfigurationPrioritySpec > default values work when property not found 0% 🟢
ConfigurationPrioritySpec > environment variables are accessible 0% 🟢
ConfigurationPrioritySpec > environment variables source exists 0% 🟢
ConfigurationPrioritySpec > grails config locations property is recognized 0% 🟢
ConfigurationPrioritySpec > grails profile is set 0% 🟢
ConfigurationPrioritySpec > multiple property sources are registered 0% 🟢
ConfigurationPrioritySpec > nested property with map value 0% 🟢
ConfigurationPrioritySpec > placeholders in configuration are resolved 0% 🟢
ConfigurationPrioritySpec > property resolver uses correct precedence 0% 🟢
ConfigurationPrioritySpec > property sources have defined order 0% 🟢
ConfigurationPrioritySpec > required property throws exception when missing 0% 🟢
ConfigurationPrioritySpec > string to boolean conversion works 0% 🟢
ConfigurationPrioritySpec > string to integer conversion works 0% 🟢
ConfigurationPrioritySpec > string to list conversion works for MIME types 0% 🟢
ConfigurationPrioritySpec > system properties are accessible 0% 🟢
ConfigurationPrioritySpec > system properties source exists 0% 🟢
ConfigurationPrioritySpec > system property java.home is accessible 0% 🟢
EnvironmentConfigurationSpec > Environment object provides utility methods 0% 🟢
EnvironmentConfigurationSpec > GSP encoding configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > Hibernate cache configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > MIME types are configured correctly 0% 🟢
EnvironmentConfigurationSpec > application.yml configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > can access configuration as flat properties 0% 🟢
EnvironmentConfigurationSpec > can access nested configuration properties 0% 🟢
EnvironmentConfigurationSpec > can check if running in specific environment 0% 🟢
EnvironmentConfigurationSpec > configuration is immutable at runtime by default 0% 🟢
EnvironmentConfigurationSpec > configuration supports default values 0% 🟢
EnvironmentConfigurationSpec > configuration supports type conversion 0% 🟢
EnvironmentConfigurationSpec > current environment is TEST 0% 🟢
EnvironmentConfigurationSpec > environment-specific datasource configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > grails application reports test environment 0% 🟢
EnvironmentConfigurationSpec > grails profile is correctly set 0% 🟢
EnvironmentConfigurationSpec > info properties contain app metadata 0% 🟢
EnvironmentConfigurationSpec > spring environment contains test profile 0% 🟢
EnvironmentConfigurationSpec > test environment uses test database URL 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-geb-gebconfig:integrationTest

Test Runs Flakiness
GebConfigSpec > should use custom RemoteWebDriver from GebConfig.groovy 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-gorm:integrationTest (first 40 of 227)

Test Runs Flakiness
AbstractParentSpec > Test that persisting a domain class with an abstract parent works 0% 🟢
BindingOutsideRequestSpec > Save nested company nested with webrequest 0% 🟢
BindingOutsideRequestSpec > Save nested company without webrequest (Quartz/Bpotstrap) 0% 🟢
BookSpec > Test dynamic finders work 0% 🟢
DirtyCheckBindingSpec > an explicit bindable:true id constraint declared on a @DirtyCheck base is inherited and binds over HTTP 0% 🟢
DirtyCheckBindingSpec > bindData over HTTP does not bind id or version on a domain extending a @DirtyCheck base 0% 🟢
DirtyCheckBindingSpec > binding only a regular property over HTTP leaves id and version null 0% 🟢
ExistsSpec > exists returns correct result with multiple rows in table 0% 🟢
ExistsSpec > exists returns false for non-existent id 0% 🟢
ExistsSpec > exists returns true for persisted entity 0% 🟢
FieldsValidationSpec > author email validation shows error for invalid format 0% 🟢
GormCascadeOperationsSpec > test addTo creates bidirectional link 0% 🟢
GormCascadeOperationsSpec > test batch insert with associations 0% 🟢
GormCascadeOperationsSpec > test belongsTo allows orphan removal 0% 🟢
GormCascadeOperationsSpec > test bidirectional navigation 0% 🟢
GormCascadeOperationsSpec > test cascade save with nested new objects 0% 🟢
GormCascadeOperationsSpec > test collection operations on hasMany 0% 🟢
GormCascadeOperationsSpec > test deleting child does not delete parent 0% 🟢
GormCascadeOperationsSpec > test dirty checking with associations 0% 🟢
GormCascadeOperationsSpec > test hasMany cascade save for City and Users 0% 🟢
GormCascadeOperationsSpec > test lazy loading of associations 0% 🟢
GormCascadeOperationsSpec > test removeFrom breaks bidirectional link 0% 🟢
GormCascadeOperationsSpec > test removing user from city 0% 🟢
GormCascadeOperationsSpec > test saving child with belongsTo saves parent reference 0% 🟢
GormCascadeOperationsSpec > test saving parent cascades to children with addTo 0% 🟢
GormCascadeOperationsSpec > test updating multiple children 0% 🟢
GormCascadeOperationsSpec > test updating parent does not affect children unless changed 0% 🟢
GormCriteriaQueriesSpec > test HQL aggregate functions 0% 🟢
GormCriteriaQueriesSpec > test HQL group by 0% 🟢
GormCriteriaQueriesSpec > test HQL join query 0% 🟢
GormCriteriaQueriesSpec > test HQL with named parameters 0% 🟢
GormCriteriaQueriesSpec > test HQL with pagination 0% 🟢
GormCriteriaQueriesSpec > test HQL with positional parameters 0% 🟢
GormCriteriaQueriesSpec > test basic HQL query 0% 🟢
GormCriteriaQueriesSpec > test criteria with association 0% 🟢
GormCriteriaQueriesSpec > test criteria with association property 0% 🟢
GormCriteriaQueriesSpec > test criteria with avg projection 0% 🟢
GormCriteriaQueriesSpec > test criteria with between restriction 0% 🟢
GormCriteriaQueriesSpec > test criteria with count projection 0% 🟢
GormCriteriaQueriesSpec > test criteria with different comparison operators: #description 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-graphql-grails-docs-app:integrationTest

Test Runs Flakiness
AuthorIntegrationSpec > test creating an author 0% 🟢
SpeakerIntegrationSpec > test creating a speaker 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-graphql-grails-tenant-app:integrationTest

Test Runs Flakiness
UserIntegrationSpec > test creating a user without a company 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-gsp-layout:test

Test Runs Flakiness
ApplicationTagLibSpec 0% 🟢
FlashMessagesTagLibSpec 0% 🟢
ValidationTagLibSpec 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-gsp-sitemesh3:integrationTest

Test Runs Flakiness
EndToEndSpec > apply layout to a template 0% 🟢
EndToEndSpec > apply layout to a template that is a full document 0% 🟢
EndToEndSpec > apply layout to content fetched from a url 0% 🟢
EndToEndSpec > apply layout to the output of another controller action 0% 🟢
EndToEndSpec > async multiple levels of layouts 1% 🟡
EndToEndSpec > async simple layout 0% 🟢
EndToEndSpec > model is available to the layout being applied 0% 🟢
EndToEndSpec > multiline title 0% 🟢
EndToEndSpec > multiple levels of layouts 0% 🟢
EndToEndSpec > parameters 0% 🟢
EndToEndSpec > parameters with logic 0% 🟢
EndToEndSpec > parse attribute forces a SiteMesh parse of the tag body 0% 🟢
EndToEndSpec > simple layout 0% 🟢
EndToEndSpec > title in subtemplate 0% 🟢
GrailsLayoutSpec > 404 Error 0% 🟢
GrailsLayoutSpec > Controller 500 Example 0% 🟢
GrailsLayoutSpec > View 500 Example 0% 🟢
GrailsLayoutSpec > decorator chaining 0% 🟢
GrailsLayoutSpec > forced layout 0% 🟢
GrailsLayoutSpec > jsp demo 0% 🟢
GrailsLayoutSpec > text 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-hyphenated:integrationTest

Test Runs Flakiness
FooBarControllerSpec > test default action 0% 🟢
FooBarControllerSpec > test returns map 0% 🟢
FooBarControllerSpec > test returns null 0% 🟢
HyphenateControllerSpec > test something 0% 🟢
NameSpacedControllerSpec > test default action 0% 🟢
NameSpacedControllerSpec > test returns map 0% 🟢
NameSpacedControllerSpec > test returns null 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-issue-10279:integrationTest

Test Runs Flakiness
ActuatorEnvClosureSpec > actuator /env endpoint response contains normal string properties from application.groovy 0% 🟢
ActuatorEnvClosureSpec > actuator /env endpoint returns 200 when application.groovy contains closure-valued config 0% 🟢
ActuatorEnvClosureSpec > actuator /health endpoint returns 200 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-issue-views-182:integrationTest

Test Runs Flakiness
CustomErrorSpec > it is possible to use gson views for handling exception errors 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-jetty:integrationTest

Test Runs Flakiness
JettySessionSpec > request params can be processed and stored in session on a Jetty-backed Grails app 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-latency:integrationTest

Test Runs Flakiness
LatencyFunctionalSpec > requests matching the latency url patterns are delayed by at least the configured minimum 0% 🟢
LatencyFunctionalSpec > requests outside the latency url patterns are not delayed 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-plugins-exploded:integrationTest

Test Runs Flakiness
PluginDependencySpec > all plugins have required metadata 0% 🟢
PluginDependencySpec > exploded plugin declares loadAfter dependency 0% 🟢
PluginDependencySpec > exploded plugin metadata is correct 0% 🟢
PluginDependencySpec > later plugins can override earlier plugin configuration 0% 🟢
PluginDependencySpec > multiple plugins can be loaded simultaneously 0% 🟢
PluginDependencySpec > plugin can access beans from dependencies 0% 🟢
PluginDependencySpec > plugin configuration is merged into application config 0% 🟢
PluginDependencySpec > plugin manager bean is the correct type 0% 🟢
PluginDependencySpec > plugin manager provides consistent state 0% 🟢
PluginDependencySpec > plugin manager respects loadAfter declarations 0% 🟢
PluginDependencySpec > plugin profiles are configured 0% 🟢
PluginDependencySpec > plugins are discoverable by pattern 0% 🟢
PluginDependencySpec > plugins can register controllers 0% 🟢
PluginDependencySpec > plugins can register custom beans 0% 🟢
PluginDependencySpec > plugins can register domains 0% 🟢
PluginDependencySpec > plugins can register services 0% 🟢
PluginDependencySpec > plugins do not interfere with each other 0% 🟢
PluginDependencySpec > spring security core plugin is loaded (dependency) 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-plugins-issue11005:integrationTest

Test Runs Flakiness
DummyDependencyIntegrationSpec > test dependency defined in resources.groovy is injected 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-plugins-loadsecond:integrationTest

Test Runs Flakiness
PluginLoadOrderSpec > can check if plugin is available 0% 🟢
PluginLoadOrderSpec > can list all loaded plugins 0% 🟢
PluginLoadOrderSpec > getGrailsPlugin returns null for non-existent plugin 0% 🟢
PluginLoadOrderSpec > grails application is available 0% 🟢
PluginLoadOrderSpec > hasGrailsPlugin returns false for non-existent plugin 0% 🟢
PluginLoadOrderSpec > loadAfter is declared correctly 0% 🟢
PluginLoadOrderSpec > loadsecond plugin is loaded 0% 🟢
PluginLoadOrderSpec > plugin configuration is loaded from plugin.yml 0% 🟢
PluginLoadOrderSpec > plugin count is greater than zero 0% 🟢
PluginLoadOrderSpec > plugin description is set 0% 🟢
PluginLoadOrderSpec > plugin documentation URL is set 0% 🟢
PluginLoadOrderSpec > plugin excludes are configured 0% 🟢
PluginLoadOrderSpec > plugin grails version constraint is set 0% 🟢
PluginLoadOrderSpec > plugin has correct metadata 0% 🟢
PluginLoadOrderSpec > plugin is enabled 0% 🟢
PluginLoadOrderSpec > plugin manager is available 0% 🟢
PluginLoadOrderSpec > plugin profiles are configured 0% 🟢
PluginLoadOrderSpec > plugin title is set 0% 🟢
PluginLoadOrderSpec > plugin version is set 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-scaffolding-fields:integrationTest (first 40 of 105)

Test Runs Flakiness
CrudFunctionalSpec > Can navigate from list to create to list 0% 🟢
CrudFunctionalSpec > Can navigate from list to show to edit to show 0% 🟢
CrudFunctionalSpec > Create department with valid data succeeds 0% 🟢
CrudFunctionalSpec > Create employee with valid data succeeds 0% 🟢
CrudFunctionalSpec > Create page displays correctly 0% 🟢
CrudFunctionalSpec > Delete removes employee from list 0% 🟢
CrudFunctionalSpec > Department list page displays correctly 0% 🟢
CrudFunctionalSpec > Edit employee with valid data succeeds 0% 🟢
CrudFunctionalSpec > Edit page displays correctly with existing data 0% 🟢
CrudFunctionalSpec > Employee list page displays correctly 0% 🟢
CrudFunctionalSpec > List page shows create new button 0% 🟢
CrudFunctionalSpec > Project list page displays correctly 0% 🟢
CrudFunctionalSpec > Show page displays employee details 0% 🟢
CrudFunctionalSpec > Show page has edit and delete buttons 0% 🟢
CustomTemplatesSpec > custom biography wrapper template is used on create page 0% 🟢
FieldTypesSpec > Association select contains existing options 0% 🟢
FieldTypesSpec > BelongsTo association renders as select dropdown 0% 🟢
FieldTypesSpec > BigDecimal property renders as number input 0% 🟢
FieldTypesSpec > Boolean property renders as checkbox 0% 🟢
FieldTypesSpec > Byte array property renders as file input 0% 🟢
FieldTypesSpec > Currency property renders as select 0% 🟢
FieldTypesSpec > Date property renders as date input or text 0% 🟢
FieldTypesSpec > Embedded object properties are rendered inline 0% 🟢
FieldTypesSpec > Enum property renders as select dropdown 0% 🟢
FieldTypesSpec > Enum select contains all enum values 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field active is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field email is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field firstName is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field lastName is present on create form 0% 🟢
FieldTypesSpec > Fields have associated labels 0% 🟢
FieldTypesSpec > HasMany association renders as multi-select or list 0% 🟢
FieldTypesSpec > Integer property renders as number input 0% 🟢
FieldTypesSpec > Locale property renders as select 0% 🟢
FieldTypesSpec > Property with inList constraint renders as select 0% 🟢
FieldTypesSpec > Required fields have visual indicator 0% 🟢
FieldTypesSpec > String property renders as text input 0% 🟢
FieldTypesSpec > String property with email constraint renders as email input 0% 🟢
FieldTypesSpec > String property with widget:textarea renders as textarea 0% 🟢
FieldTypesSpec > TimeZone property renders as select 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-test-phases:integrationTest

Test Runs Flakiness
GreetingServiceIntegrationSpec > test greeting service is wired in integration context 0% 🟢

CI / Functional Tests (Java 21, indy=false, shard 1) > :grails-test-examples-undertow:integrationTest

Test Runs Flakiness
UndertowSessionSpec > request params can be processed and stored in session on an Undertow-backed Grails app 0% 🟢
UndertowSessionSpec > the application runs on the Undertow embedded servlet container 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-app4:integrationTest

Test Runs Flakiness
WildcardActionValidationFunctionalSpec > falls through invalid wildcard action mappings to the next match 0% 🟢
WildcardActionValidationFunctionalSpec > prefers explicit method mappings over wildcard optional action matches 0% 🟢
WildcardActionValidationFunctionalSpec > prefers literal path mappings over wildcard controller matches 0% 🟢
WildcardActionValidationFunctionalSpec > resolves wildcard action mappings to declared controller actions 0% 🟢
WildcardActionValidationFunctionalSpec > validates wildcard controller tokens against registered controllers 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-cache:integrationTest

Test Runs Flakiness
AdvancedCachingIntegrationSpec > custom key caching works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > different categories have separate list cache entries via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction by custom key works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction clears list cache via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction clears map cache via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction of all custom key cache works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > exception is thrown and not cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > list data is cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > map data is cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > successful calls are cached even after exceptions via HTTP 0% 🟢
CacheTagIntegrationSpec > test block tag 0% 🟢
CacheTagIntegrationSpec > test clear blocks cache 0% 🟢
CacheTagIntegrationSpec > test clear cache 0% 🟢
CacheTagIntegrationSpec > test expire blocks cache based on ttl 0% 🟢
CacheTagIntegrationSpec > test expire render cache based on ttl 0% 🟢
CacheTagIntegrationSpec > test render tag 0% 🟢
CachingServiceIntegrationSpec > test basic cache clear service 0% 🟢
CachingServiceIntegrationSpec > test basic cache evict all service 0% 🟢
CachingServiceIntegrationSpec > test basic cache evict key service 0% 🟢
CachingServiceIntegrationSpec > test basic cache put service 0% 🟢
CachingServiceIntegrationSpec > test basic caching service 0% 🟢
CachingServiceIntegrationSpec > test caching service with method params 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches > Verify max capacities set for configured caches [cacheName: bar, expectedCapacity: 200, #1] 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches > Verify max capacities set for configured caches [cacheName: foo, expectedCapacity: 100, #0] 0% 🟢
NotCachingControllerIntegrationSpec > test action controller with different parameters 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-config-report:integrationTest

Test Runs Flakiness
ConfigReportCommandIntegrationSpec > ConfigReportCommand generates a report file with hybrid format 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties bound via @ConfigurationProperties in Other Properties 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties from all three config sources 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties from application.groovy in Other Properties 0% 🟢
ConfigReportCommandIntegrationSpec > report escapes pipe characters from application.groovy values 0% 🟢
ConfigReportCommandIntegrationSpec > report puts custom application properties in Other Properties section 0% 🟢
ConfigReportCommandIntegrationSpec > report separates known metadata properties from custom properties 0% 🟢
ConfigReportCommandIntegrationSpec > report shows known Grails properties in metadata categories 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-database-cleanup:integrationTest

Test Runs Flakiness
ClassLevelCleanupSpec > test 1 - insert data and verify it was persisted 0% 🟢
MethodLevelCleanupSpec > test 1 - insert data with @DatabaseCleanup and explicit type on method 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-enable-mvc-check:integrationTest

Test Runs Flakiness
WebMvcDefaultsFunctionalSpec > a classpath:/public resource is not served at the context root 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded DELETE body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded PATCH body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded PUT body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded POST body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > locale resolution follows the Accept-Language header and the lang request parameter is ignored 0% 🟢
WebMvcDefaultsFunctionalSpec > no static index.html welcome page is served for the unmapped root path 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-external-configuration:integrationTest (first 40 of 49)

Test Runs Flakiness
ConfigurationPrioritySpec > TEST_HOME environment variable from build.gradle is accessible 0% 🟢
ConfigurationPrioritySpec > active profiles affect configuration 0% 🟢
ConfigurationPrioritySpec > application.yml configuration is loaded 0% 🟢
ConfigurationPrioritySpec > can list all property source names 0% 🟢
ConfigurationPrioritySpec > deeply nested properties are accessible 0% 🟢
ConfigurationPrioritySpec > default values work when property not found 0% 🟢
ConfigurationPrioritySpec > environment variables are accessible 0% 🟢
ConfigurationPrioritySpec > environment variables source exists 0% 🟢
ConfigurationPrioritySpec > grails config locations property is recognized 0% 🟢
ConfigurationPrioritySpec > grails profile is set 0% 🟢
ConfigurationPrioritySpec > multiple property sources are registered 0% 🟢
ConfigurationPrioritySpec > nested property with map value 0% 🟢
ConfigurationPrioritySpec > placeholders in configuration are resolved 0% 🟢
ConfigurationPrioritySpec > property resolver uses correct precedence 0% 🟢
ConfigurationPrioritySpec > property sources have defined order 0% 🟢
ConfigurationPrioritySpec > required property throws exception when missing 0% 🟢
ConfigurationPrioritySpec > string to boolean conversion works 0% 🟢
ConfigurationPrioritySpec > string to integer conversion works 0% 🟢
ConfigurationPrioritySpec > string to list conversion works for MIME types 0% 🟢
ConfigurationPrioritySpec > system properties are accessible 0% 🟢
ConfigurationPrioritySpec > system properties source exists 0% 🟢
ConfigurationPrioritySpec > system property java.home is accessible 0% 🟢
EnvironmentConfigurationSpec > Environment object provides utility methods 0% 🟢
EnvironmentConfigurationSpec > GSP encoding configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > Hibernate cache configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > MIME types are configured correctly 0% 🟢
EnvironmentConfigurationSpec > application.yml configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > can access configuration as flat properties 0% 🟢
EnvironmentConfigurationSpec > can access nested configuration properties 0% 🟢
EnvironmentConfigurationSpec > can check if running in specific environment 0% 🟢
EnvironmentConfigurationSpec > configuration is immutable at runtime by default 0% 🟢
EnvironmentConfigurationSpec > configuration supports default values 0% 🟢
EnvironmentConfigurationSpec > configuration supports type conversion 0% 🟢
EnvironmentConfigurationSpec > current environment is TEST 0% 🟢
EnvironmentConfigurationSpec > environment-specific datasource configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > grails application reports test environment 0% 🟢
EnvironmentConfigurationSpec > grails profile is correctly set 0% 🟢
EnvironmentConfigurationSpec > info properties contain app metadata 0% 🟢
EnvironmentConfigurationSpec > spring environment contains test profile 0% 🟢
EnvironmentConfigurationSpec > test environment uses test database URL 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-geb-gebconfig:integrationTest

Test Runs Flakiness
GebConfigSpec > should use custom RemoteWebDriver from GebConfig.groovy 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-gorm:integrationTest (first 40 of 227)

Test Runs Flakiness
AbstractParentSpec > Test that persisting a domain class with an abstract parent works 0% 🟢
BindingOutsideRequestSpec > Save nested company nested with webrequest 0% 🟢
BindingOutsideRequestSpec > Save nested company without webrequest (Quartz/Bpotstrap) 0% 🟢
BookSpec > Test dynamic finders work 0% 🟢
DirtyCheckBindingSpec > an explicit bindable:true id constraint declared on a @DirtyCheck base is inherited and binds over HTTP 0% 🟢
DirtyCheckBindingSpec > bindData over HTTP does not bind id or version on a domain extending a @DirtyCheck base 0% 🟢
DirtyCheckBindingSpec > binding only a regular property over HTTP leaves id and version null 0% 🟢
ExistsSpec > exists returns correct result with multiple rows in table 0% 🟢
ExistsSpec > exists returns false for non-existent id 0% 🟢
ExistsSpec > exists returns true for persisted entity 0% 🟢
FieldsValidationSpec > author email validation shows error for invalid format 0% 🟢
GormCascadeOperationsSpec > test addTo creates bidirectional link 0% 🟢
GormCascadeOperationsSpec > test batch insert with associations 0% 🟢
GormCascadeOperationsSpec > test belongsTo allows orphan removal 0% 🟢
GormCascadeOperationsSpec > test bidirectional navigation 0% 🟢
GormCascadeOperationsSpec > test cascade save with nested new objects 0% 🟢
GormCascadeOperationsSpec > test collection operations on hasMany 0% 🟢
GormCascadeOperationsSpec > test deleting child does not delete parent 0% 🟢
GormCascadeOperationsSpec > test dirty checking with associations 0% 🟢
GormCascadeOperationsSpec > test hasMany cascade save for City and Users 0% 🟢
GormCascadeOperationsSpec > test lazy loading of associations 0% 🟢
GormCascadeOperationsSpec > test removeFrom breaks bidirectional link 0% 🟢
GormCascadeOperationsSpec > test removing user from city 0% 🟢
GormCascadeOperationsSpec > test saving child with belongsTo saves parent reference 0% 🟢
GormCascadeOperationsSpec > test saving parent cascades to children with addTo 0% 🟢
GormCascadeOperationsSpec > test updating multiple children 0% 🟢
GormCascadeOperationsSpec > test updating parent does not affect children unless changed 0% 🟢
GormCriteriaQueriesSpec > test HQL aggregate functions 0% 🟢
GormCriteriaQueriesSpec > test HQL group by 0% 🟢
GormCriteriaQueriesSpec > test HQL join query 0% 🟢
GormCriteriaQueriesSpec > test HQL with named parameters 0% 🟢
GormCriteriaQueriesSpec > test HQL with pagination 0% 🟢
GormCriteriaQueriesSpec > test HQL with positional parameters 0% 🟢
GormCriteriaQueriesSpec > test basic HQL query 0% 🟢
GormCriteriaQueriesSpec > test criteria with association 0% 🟢
GormCriteriaQueriesSpec > test criteria with association property 0% 🟢
GormCriteriaQueriesSpec > test criteria with avg projection 0% 🟢
GormCriteriaQueriesSpec > test criteria with between restriction 0% 🟢
GormCriteriaQueriesSpec > test criteria with count projection 0% 🟢
GormCriteriaQueriesSpec > test criteria with different comparison operators: #description 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-graphql-grails-docs-app:integrationTest

Test Runs Flakiness
AuthorIntegrationSpec > test creating an author 0% 🟢
SpeakerIntegrationSpec > test creating a speaker 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-graphql-grails-tenant-app:integrationTest

Test Runs Flakiness
UserIntegrationSpec > test creating a user without a company 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-gsp-layout:test

Test Runs Flakiness
ApplicationTagLibSpec 0% 🟢
FlashMessagesTagLibSpec 0% 🟢
ValidationTagLibSpec 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-gsp-sitemesh3:integrationTest

Test Runs Flakiness
EndToEndSpec > apply layout to a template 0% 🟢
EndToEndSpec > apply layout to a template that is a full document 0% 🟢
EndToEndSpec > apply layout to content fetched from a url 0% 🟢
EndToEndSpec > apply layout to the output of another controller action 0% 🟢
EndToEndSpec > async multiple levels of layouts 1% 🟡
EndToEndSpec > async simple layout 0% 🟢
EndToEndSpec > model is available to the layout being applied 0% 🟢
EndToEndSpec > multiline title 0% 🟢
EndToEndSpec > multiple levels of layouts 0% 🟢
EndToEndSpec > parameters 0% 🟢
EndToEndSpec > parameters with logic 0% 🟢
EndToEndSpec > parse attribute forces a SiteMesh parse of the tag body 0% 🟢
EndToEndSpec > simple layout 0% 🟢
EndToEndSpec > title in subtemplate 0% 🟢
GrailsLayoutSpec > 404 Error 0% 🟢
GrailsLayoutSpec > Controller 500 Example 0% 🟢
GrailsLayoutSpec > View 500 Example 0% 🟢
GrailsLayoutSpec > decorator chaining 0% 🟢
GrailsLayoutSpec > forced layout 0% 🟢
GrailsLayoutSpec > jsp demo 0% 🟢
GrailsLayoutSpec > text 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-hyphenated:integrationTest

Test Runs Flakiness
FooBarControllerSpec > test default action 0% 🟢
FooBarControllerSpec > test returns map 0% 🟢
FooBarControllerSpec > test returns null 0% 🟢
HyphenateControllerSpec > test something 0% 🟢
NameSpacedControllerSpec > test default action 0% 🟢
NameSpacedControllerSpec > test returns map 0% 🟢
NameSpacedControllerSpec > test returns null 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-issue-10279:integrationTest

Test Runs Flakiness
ActuatorEnvClosureSpec > actuator /env endpoint response contains normal string properties from application.groovy 0% 🟢
ActuatorEnvClosureSpec > actuator /env endpoint returns 200 when application.groovy contains closure-valued config 0% 🟢
ActuatorEnvClosureSpec > actuator /health endpoint returns 200 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-issue-views-182:integrationTest

Test Runs Flakiness
CustomErrorSpec > it is possible to use gson views for handling exception errors 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-jetty:integrationTest

Test Runs Flakiness
JettySessionSpec > request params can be processed and stored in session on a Jetty-backed Grails app 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-latency:integrationTest

Test Runs Flakiness
LatencyFunctionalSpec > requests matching the latency url patterns are delayed by at least the configured minimum 0% 🟢
LatencyFunctionalSpec > requests outside the latency url patterns are not delayed 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-plugins-exploded:integrationTest

Test Runs Flakiness
PluginDependencySpec > all plugins have required metadata 0% 🟢
PluginDependencySpec > exploded plugin declares loadAfter dependency 0% 🟢
PluginDependencySpec > exploded plugin metadata is correct 0% 🟢
PluginDependencySpec > later plugins can override earlier plugin configuration 0% 🟢
PluginDependencySpec > multiple plugins can be loaded simultaneously 0% 🟢
PluginDependencySpec > plugin can access beans from dependencies 0% 🟢
PluginDependencySpec > plugin configuration is merged into application config 0% 🟢
PluginDependencySpec > plugin manager bean is the correct type 0% 🟢
PluginDependencySpec > plugin manager provides consistent state 0% 🟢
PluginDependencySpec > plugin manager respects loadAfter declarations 0% 🟢
PluginDependencySpec > plugin profiles are configured 0% 🟢
PluginDependencySpec > plugins are discoverable by pattern 0% 🟢
PluginDependencySpec > plugins can register controllers 0% 🟢
PluginDependencySpec > plugins can register custom beans 0% 🟢
PluginDependencySpec > plugins can register domains 0% 🟢
PluginDependencySpec > plugins can register services 0% 🟢
PluginDependencySpec > plugins do not interfere with each other 0% 🟢
PluginDependencySpec > spring security core plugin is loaded (dependency) 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-plugins-issue11005:integrationTest

Test Runs Flakiness
DummyDependencyIntegrationSpec > test dependency defined in resources.groovy is injected 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-plugins-loadsecond:integrationTest

Test Runs Flakiness
PluginLoadOrderSpec > can check if plugin is available 0% 🟢
PluginLoadOrderSpec > can list all loaded plugins 0% 🟢
PluginLoadOrderSpec > getGrailsPlugin returns null for non-existent plugin 0% 🟢
PluginLoadOrderSpec > grails application is available 0% 🟢
PluginLoadOrderSpec > hasGrailsPlugin returns false for non-existent plugin 0% 🟢
PluginLoadOrderSpec > loadAfter is declared correctly 0% 🟢
PluginLoadOrderSpec > loadsecond plugin is loaded 0% 🟢
PluginLoadOrderSpec > plugin configuration is loaded from plugin.yml 0% 🟢
PluginLoadOrderSpec > plugin count is greater than zero 0% 🟢
PluginLoadOrderSpec > plugin description is set 0% 🟢
PluginLoadOrderSpec > plugin documentation URL is set 0% 🟢
PluginLoadOrderSpec > plugin excludes are configured 0% 🟢
PluginLoadOrderSpec > plugin grails version constraint is set 0% 🟢
PluginLoadOrderSpec > plugin has correct metadata 0% 🟢
PluginLoadOrderSpec > plugin is enabled 0% 🟢
PluginLoadOrderSpec > plugin manager is available 0% 🟢
PluginLoadOrderSpec > plugin profiles are configured 0% 🟢
PluginLoadOrderSpec > plugin title is set 0% 🟢
PluginLoadOrderSpec > plugin version is set 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-scaffolding-fields:integrationTest (first 40 of 105)

Test Runs Flakiness
CrudFunctionalSpec > Can navigate from list to create to list 0% 🟢
CrudFunctionalSpec > Can navigate from list to show to edit to show 0% 🟢
CrudFunctionalSpec > Create department with valid data succeeds 0% 🟢
CrudFunctionalSpec > Create employee with valid data succeeds 0% 🟢
CrudFunctionalSpec > Create page displays correctly 0% 🟢
CrudFunctionalSpec > Delete removes employee from list 0% 🟢
CrudFunctionalSpec > Department list page displays correctly 0% 🟢
CrudFunctionalSpec > Edit employee with valid data succeeds 0% 🟢
CrudFunctionalSpec > Edit page displays correctly with existing data 0% 🟢
CrudFunctionalSpec > Employee list page displays correctly 0% 🟢
CrudFunctionalSpec > List page shows create new button 0% 🟢
CrudFunctionalSpec > Project list page displays correctly 0% 🟢
CrudFunctionalSpec > Show page displays employee details 0% 🟢
CrudFunctionalSpec > Show page has edit and delete buttons 0% 🟢
CustomTemplatesSpec > custom biography wrapper template is used on create page 0% 🟢
FieldTypesSpec > Association select contains existing options 0% 🟢
FieldTypesSpec > BelongsTo association renders as select dropdown 0% 🟢
FieldTypesSpec > BigDecimal property renders as number input 0% 🟢
FieldTypesSpec > Boolean property renders as checkbox 0% 🟢
FieldTypesSpec > Byte array property renders as file input 0% 🟢
FieldTypesSpec > Currency property renders as select 0% 🟢
FieldTypesSpec > Date property renders as date input or text 0% 🟢
FieldTypesSpec > Embedded object properties are rendered inline 0% 🟢
FieldTypesSpec > Enum property renders as select dropdown 0% 🟢
FieldTypesSpec > Enum select contains all enum values 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field active is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field email is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field firstName is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field lastName is present on create form 0% 🟢
FieldTypesSpec > Fields have associated labels 0% 🟢
FieldTypesSpec > HasMany association renders as multi-select or list 0% 🟢
FieldTypesSpec > Integer property renders as number input 0% 🟢
FieldTypesSpec > Locale property renders as select 0% 🟢
FieldTypesSpec > Property with inList constraint renders as select 0% 🟢
FieldTypesSpec > Required fields have visual indicator 0% 🟢
FieldTypesSpec > String property renders as text input 0% 🟢
FieldTypesSpec > String property with email constraint renders as email input 0% 🟢
FieldTypesSpec > String property with widget:textarea renders as textarea 0% 🟢
FieldTypesSpec > TimeZone property renders as select 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-test-phases:integrationTest

Test Runs Flakiness
GreetingServiceIntegrationSpec > test greeting service is wired in integration context 0% 🟢

CI / Functional Tests (Java 21, indy=true, shard 1) > :grails-test-examples-undertow:integrationTest

Test Runs Flakiness
UndertowSessionSpec > request params can be processed and stored in session on an Undertow-backed Grails app 0% 🟢
UndertowSessionSpec > the application runs on the Undertow embedded servlet container 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-app2:integrationTest

Test Runs Flakiness
ErrorsControllerSpec > Test a global 500 mapping that maps to another controller 0% 🟢
GrailsUtilStackFiltererIntegrationSpec > GrailsUtil.deepSanitize uses the StackTraceFilterer configured via grails.logging.stackTraceFiltererClass 0% 🟢
NotFoundHandlerSpec > Test that a 404 handler renders the view correctly when a forward is executed 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-app3:integrationTest

Test Runs Flakiness
LoadAfterSpec > Test override one plugin view from another plugin 0% 🟢
PluginBeansBeforeAutoConfigurationSpec > a plugin beanRegistrar bean wins over the app's @ConditionalOnMissingBean default 0% 🟢
PluginBeansBeforeAutoConfigurationSpec > a plugin doWithSpring bean wins over the app's @ConditionalOnMissingBean default 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-app5:integrationTest

Test Runs Flakiness
WildcardValidationDisabledSpec > grails.urlmapping.validateWildcards false keeps the fallback mapping selected ahead of a valid wildcard controller match 0% 🟢
WildcardValidationDisabledSpec > the target controller itself remains available through the standard controller route 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-async-events-pubsub-demo:integrationTest

Test Runs Flakiness
AsyncEventsSpec > book events are received after save 0% 🟢
AsyncEventsSpec > event listener receives correct book title 0% 🟢
AsyncEventsSpec > humor prefix is added by event listener 0% 🟢
AsyncEventsSpec > insert events contain book entity 0% 🟢
AsyncEventsSpec > multiple books can be saved in sequence 0% 🟢
AsyncEventsSpec > multiple sum events accumulate correctly 0% 🟢
AsyncEventsSpec > politics book throws exception 0% 🟢
AsyncEventsSpec > subscriber can track multiple book saves 0% 🟢
AsyncEventsSpec > sum service handles negative values 0% 🟢
AsyncEventsSpec > sum service handles zero values 0% 🟢
AsyncEventsSpec > total service accumulation handles rapid events 0% 🟢
PubSubSpec > Test event bus within Grails 0% 🟢
PubSubSpec > Test event from data service 0% 🟢
PubSubSpec > Test event from data service with rollback 0% 🟢
PubSubSpec > Test modify property event listener 0% 🟢
PubSubSpec > Test synchronous event listener 0% 🟢
TaskControllerSpec > test async error handling 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-datasources:integrationTest

Test Runs Flakiness
CrossDatasourceTransactionSpec > REQUIRES_NEW creates independent transaction 0% 🟢
CrossDatasourceTransactionSpec > chained transaction manager coordinates transactions across datasources 0% 🟢
CrossDatasourceTransactionSpec > count operations are datasource-specific 0% 🟢
CrossDatasourceTransactionSpec > detached objects can be reattached in different transactions 0% 🟢
CrossDatasourceTransactionSpec > error in primary datasource does not affect already-committed secondary 0% 🟢
CrossDatasourceTransactionSpec > error in secondary datasource can be caught without affecting primary 0% 🟢
CrossDatasourceTransactionSpec > flush mode can be controlled within session 0% 🟢
CrossDatasourceTransactionSpec > nested transactions work correctly 0% 🟢
CrossDatasourceTransactionSpec > operations on both datasources within single test method 0% 🟢
CrossDatasourceTransactionSpec > read-only transactions work correctly 0% 🟢
CrossDatasourceTransactionSpec > refresh reloads from database 0% 🟢
CrossDatasourceTransactionSpec > withNewSession creates new Hibernate session 0% 🟢
DatasourceSwitchingSpec > CRUD operations work independently on each datasource 0% 🟢
DatasourceSwitchingSpec > batch insert works on each datasource 0% 🟢
DatasourceSwitchingSpec > bulk delete works on each datasource 0% 🟢
DatasourceSwitchingSpec > count operations work correctly on each datasource 0% 🟢
DatasourceSwitchingSpec > createCriteria routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > data in primary datasource is isolated from secondary 0% 🟢
DatasourceSwitchingSpec > datasources are properly configured and distinct 0% 🟢
DatasourceSwitchingSpec > datasources use correct connection URLs 0% 🟢
DatasourceSwitchingSpec > dynamic finders work on each datasource independently 0% 🟢
DatasourceSwitchingSpec > executeQuery routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > executeUpdate routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > findAll with criteria works on each datasource 0% 🟢
DatasourceSwitchingSpec > rollback in one datasource does not affect other 0% 🟢
DatasourceSwitchingSpec > same entity name in different packages uses different datasources 0% 🟢
DatasourceSwitchingSpec > secondary namespace API provides access to secondary datasource 0% 🟢
DatasourceSwitchingSpec > transactions are independent between datasources 0% 🟢
DatasourceSwitchingSpec > where queries work on each datasource 0% 🟢
DatasourceSwitchingSpec > withCriteria routes to secondary datasource 0% 🟢
MultipleDataSourcesSpec > Test multiple data source persistence 0% 🟢
OsivGspRenderingSpec > OSIV keeps secondary datasource session open during GSP view rendering 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-exploded:integrationTest

Test Runs Flakiness
LoadAfterSpec > Basic test to prove reloading worked 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-geb-context-path:integrationTest

Test Runs Flakiness
ContextPathSpec > should navigate to a controller under the configured context path 0% 🟢
ContextPathSpec > should navigate to the home page under the configured context path 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-geb:integrationTest

Test Runs Flakiness
ChildPreferenceInheritedConfigSpec > should show the right server name when visiting /serverName 0% 🟢
ContainerFileDetectorAnnotationSpec > should fail to find file with fileDetector changed to UselessContainerFileDetector via annotation 0% 🟢
ContainerFileDetectorDefaultSpec > should be able to find and upload local files 0% 🟢
ContainerFileDetectorSpockSpec > should fail to find file with fileDetector changed to UselessContainerFileDetector in setupSpec 0% 🟢
DownloadSupportSpec > should be able to use download methods 0% 🟢
InheritedConfigSpec > should show the right server name when visiting /serverName 0% 🟢
MultipleInheritanceSpec > should show the right server name when visiting /serverName 0% 🟢
NotInheritedConfigSpec > should show the right server name when visiting /serverName 0% 🟢
PageDelegateSpec > should delegate to page object 0% 🟢
PerTestRecordingSpec > (setup) running a test to create a recording 0% 🟢
RootPageSpec > should display the correct title on the home page 0% 🟢
ServerNameControllerSpec > should show the right server name when visiting /serverName 0% 🟢
UploadSpec > should be able to upload files on a non-Windows host 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-graphql-grails-multi-datastore-app:integrationTest

Test Runs Flakiness
BarIntegrationSpec > test a bar can be created 0% 🟢
FooIntegrationSpec > test a foo can be created 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-graphql-grails-test-app:integrationTest

Test Runs Flakiness
ArguedFieldIntegrationSpec > test a custom argument 0% 🟢
ArguedFieldIntegrationSpec > test a simple argument 0% 🟢
ArguedFieldIntegrationSpec > test a simple argument list 0% 🟢
ArtistIntegrationSpec > test listing artists and paintings 0% 🟢
AuthorIntegrationSpec 0% 🟢
AuthorIntegrationSpec > test creating an author with multiple books 0% 🟢
BookIntegrationSpec > test books cannot be queried directly 0% 🟢
CommentIntegrationSpec > test creating the first comment 0% 🟢
GrailsTeamMemberIntegrationSpec > test retrieving a page of results 0% 🟢
GrailsTeamMemberIntegrationSpec > test retrieving the next page of results 0% 🟢
InheritanceIntegrationSpec > test the ... on directive works 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers too long byte 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers too long int 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers too long long 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers too long short 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers valid 0% 🟢
PaymentIntegrationSpec > test payments can not be created because the class is abstract 0% 🟢
PostIntegrationSpec 0% 🟢
PostIntegrationSpec > test creating a post without tags 0% 🟢
RestrictedIntegrationSpec > test creating a restricted 0% 🟢
SimpleCompositeIntegrationSpec > test creating an entity with a simple composite id 0% 🟢
SoftDeleteIntegrationSpec > test delete 0% 🟢
SoftDeleteIntegrationSpec > test we can get the instance in a list query 0% 🟢
SoftDeleteIntegrationSpec > test we can query the instance 0% 🟢
SoftDeleteIntegrationSpec > test we cant get the instance in a list query 0% 🟢
SoftDeleteIntegrationSpec > test we cant query the instance 0% 🟢
TagIntegrationSpec 0% 🟢
TagIntegrationSpec > test a custom property can reference a domain 0% 🟢
TagIntegrationSpec > test a custom property can reference a domain with using joins 0% 🟢
TagIntegrationSpec > test getting the count 0% 🟢
TagIntegrationSpec > test optimistic locking 0% 🟢
TypeTestIntegrationSpec > test create 0% 🟢
TypeTestIntegrationSpec > test create with variables 0% 🟢
UserIntegrationSpec > test creating a user without a profile 0% 🟢
UserRoleIntegrationSpec > test creating an entity with a complex composite id 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-gsp-compile-static:integrationTest

Test Runs Flakiness
GspCompileStaticSpec > a page reading the names the framework binds is compiled statically and renders 0% 🟢
GspCompileStaticSpec > a page that declares a model is compiled statically because it declared one 0% 🟢
GspCompileStaticSpec > a page that declares a model is compiled statically because it declared one > a page that declares a model is compiled statically because it declared one [view: /demo/declared.gsp, #1] 0% 🟢
GspCompileStaticSpec > a page that declares a model is compiled statically because it declared one > a page that declares a model is compiled statically because it declared one [view: /demo/index.gsp, #0] 0% 🟢
GspCompileStaticSpec > a page that declares its model is compiled statically and renders 0% 🟢
GspCompileStaticSpec > a page that declares nothing is compiled statically because the build asked for it 0% 🟢
GspCompileStaticSpec > a page using closures and a tag library renders what it computed 0% 🟢
GspCompileStaticSpec > the page compiler the build forked wrote statically compiled classes 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-gsp-layout:integrationTest

Test Runs Flakiness
EndToEndSpec > multiline title 0% 🟢
EndToEndSpec > multiple levels of layouts 0% 🟢
EndToEndSpec > parameters 0% 🟢
EndToEndSpec > parameters with logic 0% 🟢
EndToEndSpec > simple layout 0% 🟢
EndToEndSpec > title in subtemplate 0% 🟢
GrailsLayoutSpec > 404 Error 0% 🟢
GrailsLayoutSpec > Controller 500 Example 0% 🟢
GrailsLayoutSpec > View 500 Example 0% 🟢
GrailsLayoutSpec > decorator chaining 0% 🟢
GrailsLayoutSpec > forced layout 0% 🟢
GrailsLayoutSpec > jsp demo 0% 🟢
GrailsLayoutSpec > text 0% 🟢
GspTagLibSpec > encodeAsHTML prevents XSS 0% 🟢
GspTagLibSpec > encodeAsURL encodes URL parameters 0% 🟢
GspTagLibSpec > g:checkBox renders checkbox input 0% 🟢
GspTagLibSpec > g:createLink generates URLs 0% 🟢
GspTagLibSpec > g:each provides status variable 0% 🟢
GspTagLibSpec > g:each tag iterates over collection 0% 🟢
GspTagLibSpec > g:else tag hidden when g:if is true 0% 🟢
GspTagLibSpec > g:else tag shows when g:if is false 0% 🟢
GspTagLibSpec > g:form renders form with correct attributes 0% 🟢
GspTagLibSpec > g:formatBoolean formats boolean correctly 0% 🟢
GspTagLibSpec > g:formatDate formats date correctly 0% 🟢
GspTagLibSpec > g:formatNumber formats number correctly 0% 🟢
GspTagLibSpec > g:if tag hides content when condition false 0% 🟢
GspTagLibSpec > g:if tag shows content when condition true 0% 🟢
GspTagLibSpec > g:join joins collection with delimiter 0% 🟢
GspTagLibSpec > g:link generates correct links 0% 🟢
GspTagLibSpec > g:passwordField renders password input 0% 🟢
GspTagLibSpec > g:render includes template 0% 🟢
GspTagLibSpec > g:set creates local variable 0% 🟢
GspTagLibSpec > g:set evaluates expressions 0% 🟢
GspTagLibSpec > g:set works with collections 0% 🟢
GspTagLibSpec > g:submitButton renders submit button 0% 🟢
GspTagLibSpec > g:textArea renders textarea 0% 🟢
GspTagLibSpec > g:textField renders input with value 0% 🟢
GspTagLibSpec > spread operator with g:join works 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-issue-11102:integrationTest

Test Runs Flakiness
TestControllerSpec > can forward a request from a GET to another GET action 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-issue-15228:integrationTest

Test Runs Flakiness
GsonViewRespondSpec > respond with Error gson view 0% 🟢
GsonViewRespondSpec > respond with gson view from action name 0% 🟢
GsonViewRespondSpec > respond with gson view from type 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-issue-698-domain-save-npe:integrationTest

Test Runs Flakiness
BookSpecSpec > It works well if there is a validate error: maxSize 0% 🟢
BookSpecSpec > It works well if there is a validate error: nullable 0% 🟢
BookSpecSpec > It works well if there is no validate error in both Java 7 and 8 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-mail:integrationTest

Test Runs Flakiness
MailSendSpec > controller should be able to send mail 0% 🟢
MailServiceSpec > should handle newlines in text GSP views 0% 🟢
MailServiceSpec > should handle newlines in text GSP views > should handle newlines in text GSP views [view: /_testemails/newLineTagTest, #1] 0% 🟢
MailServiceSpec > should handle newlines in text GSP views > should handle newlines in text GSP views [view: /_testemails/newLineTest, #0] 0% 🟢
MailServiceSpec > should send a mail message to multiple recipients 0% 🟢
MailServiceSpec > should send a mail message to multiple recipients using a list 0% 🟢
MailServiceSpec > should send a mail message to multiple recipients with CC and BCC 0% 🟢
MailServiceSpec > should send a mail message using a view successfully 0% 🟢
MailServiceSpec > should send a mail message using a view without a model successfully 0% 🟢
MailServiceSpec > should send a mail message using an HTML view successfully 0% 🟢
MailServiceSpec > should send a mail message with custom headers successfully 0% 🟢
MailServiceSpec > should send a mail message with multiple BCC recipients using a list 0% 🟢
MailServiceSpec > should send a mail message with multiple CC recipients using a list 0% 🟢
MailServiceSpec > should send a multipart email with text content first and HTML content last 0% 🟢
MailServiceSpec > should send a simple mail message asynchronously 0% 🟢
MailServiceSpec > should send a simple mail message successfully 0% 🟢
MailServiceSpec > should send a text mail message using a view successfully 0% 🟢
MailServiceSpec > should send an HTML mail message successfully 0% 🟢
MailServiceSpec > should send an HTML mail message using a view successfully 0% 🟢
MailServiceSpec > should send an email in MULTIPART_MODE_RELATED mode 0% 🟢
MailServiceSpec > should send an email with HTML content type 0% 🟢
MailServiceSpec > should send an email with a byte array attachment 0% 🟢
MailServiceSpec > should send an email with an inline attachment 0% 🟢
MailServiceSpec > should send an email with byte array and resource attachments 0% 🟢
MailServiceSpec > should send mail messages using a view with tags 0% 🟢
MailServiceSpec > should send mail messages with translations based on locale 0% 🟢
MailServiceSpec > should send mail with envelopeFrom correctly set 0% 🟢
MailServiceSpec > should throw GrailsMailException when sending mail with headers using non-MIME capable mail sender 0% 🟢
MailServiceSpec > should throw GrailsMailException when using envelopeFrom with basic mail sender 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-namespaces:integrationTest

Test Runs Flakiness
ContextPathSpec > test the context path defined in the environment overrides the standard one 0% 🟢
NamespaceViewRenderingSpec > Test namespace is inferred for links rendered from an admin namespaced page 0% 🟢
NamespaceViewRenderingSpec > Test namespace is inferred for redirects and chains from an admin namespaced controller 0% 🟢
NamespaceViewRenderingSpec > Test view rendering works as expected when namespaces are used 0% 🟢
PageControllerSpec > test that the page renders correctly 0% 🟢
ReportControllerSpec > test that admin report page renders correctly 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-plugins-loadfirst:integrationTest

Test Runs Flakiness
PluginLifecycleSpec > can get beans from application context 0% 🟢
PluginLifecycleSpec > can iterate over all plugins 0% 🟢
PluginLifecycleSpec > getGrailsPluginForClassName returns plugin for plugin class 0% 🟢
PluginLifecycleSpec > hasGrailsPlugin works correctly 0% 🟢
PluginLifecycleSpec > loadfirst is in all plugins collection 0% 🟢
PluginLifecycleSpec > loadfirst plugin is registered 0% 🟢
PluginLifecycleSpec > plugin beans are registered in application context 0% 🟢
PluginLifecycleSpec > plugin configuration from plugin.yml is loaded 0% 🟢
PluginLifecycleSpec > plugin controller is available 0% 🟢
PluginLifecycleSpec > plugin documentation URL is configured 0% 🟢
PluginLifecycleSpec > plugin excludes are configured 0% 🟢
PluginLifecycleSpec > plugin i18n messages are accessible 0% 🟢
PluginLifecycleSpec > plugin instance is correct type 0% 🟢
PluginLifecycleSpec > plugin is loaded and active 0% 🟢
PluginLifecycleSpec > plugin manager is in application context 0% 🟢
PluginLifecycleSpec > plugin order is available 0% 🟢
PluginLifecycleSpec > plugin profiles are configured 0% 🟢
PluginLifecycleSpec > plugin title is set 0% 🟢
PluginLifecycleSpec > plugin version constraint is defined 0% 🟢
PluginLifecycleSpec > plugin version is available 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-quartz:integrationTest

Test Runs Flakiness
QuartzLongRunningJobSpec > a job that runs for too long is stopped by interrupting it 0% 🟢
QuartzLongRunningJobSpec > a job which is not concurrent is not executed while an earlier execution is still running 0% 🟢
QuartzSchedulingSpec > a global job listener registered by the application observes every job execution 0% 🟢
QuartzSchedulingSpec > a job scheduled at runtime with a cron expression is registered with the scheduler 0% 🟢
QuartzSchedulingSpec > a job scheduled at runtime with a repeat interval is executed by the scheduler 0% 🟢
QuartzSchedulingSpec > a job whose trigger can never fire does not keep the application from starting 0% 🟢
QuartzSchedulingSpec > a job with a simple trigger is executed without any intervention 0% 🟢
QuartzSchedulingSpec > a job without triggers only runs when it is triggered through the QuartzJob trait 0% 🟢
QuartzSchedulingSpec > every job artefact is registered with the scheduler 0% 🟢
QuartzSchedulingSpec > scheduling a job that the scheduler does not know about reports why 0% 🟢
QuartzSchedulingSpec > scheduling a job with a null argument reports the null instead of failing with a null pointer 0% 🟢
QuartzSchedulingSpec > the scheduler is started once the application has bootstrapped 0% 🟢

CI / Functional Tests (Java 25, indy=false) > :grails-test-examples-scaffolding:integrationTest

Test Runs Flakiness
BookControllerSpec > Book list 0% 🟢
UserCommunityControllerSpec > User list 0% 🟢
UserControllerSpec > User list 3% 🟡

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-app4:integrationTest

Test Runs Flakiness
WildcardActionValidationFunctionalSpec > falls through invalid wildcard action mappings to the next match 0% 🟢
WildcardActionValidationFunctionalSpec > prefers explicit method mappings over wildcard optional action matches 0% 🟢
WildcardActionValidationFunctionalSpec > prefers literal path mappings over wildcard controller matches 0% 🟢
WildcardActionValidationFunctionalSpec > resolves wildcard action mappings to declared controller actions 0% 🟢
WildcardActionValidationFunctionalSpec > validates wildcard controller tokens against registered controllers 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-cache:integrationTest

Test Runs Flakiness
AdvancedCachingIntegrationSpec > custom key caching works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > different categories have separate list cache entries via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction by custom key works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction clears list cache via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction clears map cache via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction of all custom key cache works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > exception is thrown and not cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > list data is cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > map data is cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > successful calls are cached even after exceptions via HTTP 0% 🟢
CacheTagIntegrationSpec > test block tag 0% 🟢
CacheTagIntegrationSpec > test clear blocks cache 0% 🟢
CacheTagIntegrationSpec > test clear cache 0% 🟢
CacheTagIntegrationSpec > test expire blocks cache based on ttl 0% 🟢
CacheTagIntegrationSpec > test expire render cache based on ttl 0% 🟢
CacheTagIntegrationSpec > test render tag 0% 🟢
CachingServiceIntegrationSpec > test basic cache clear service 0% 🟢
CachingServiceIntegrationSpec > test basic cache evict all service 0% 🟢
CachingServiceIntegrationSpec > test basic cache evict key service 0% 🟢
CachingServiceIntegrationSpec > test basic cache put service 0% 🟢
CachingServiceIntegrationSpec > test basic caching service 0% 🟢
CachingServiceIntegrationSpec > test caching service with method params 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches > Verify max capacities set for configured caches [cacheName: bar, expectedCapacity: 200, #1] 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches > Verify max capacities set for configured caches [cacheName: foo, expectedCapacity: 100, #0] 0% 🟢
NotCachingControllerIntegrationSpec > test action controller with different parameters 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-config-report:integrationTest

Test Runs Flakiness
ConfigReportCommandIntegrationSpec > ConfigReportCommand generates a report file with hybrid format 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties bound via @ConfigurationProperties in Other Properties 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties from all three config sources 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties from application.groovy in Other Properties 0% 🟢
ConfigReportCommandIntegrationSpec > report escapes pipe characters from application.groovy values 0% 🟢
ConfigReportCommandIntegrationSpec > report puts custom application properties in Other Properties section 0% 🟢
ConfigReportCommandIntegrationSpec > report separates known metadata properties from custom properties 0% 🟢
ConfigReportCommandIntegrationSpec > report shows known Grails properties in metadata categories 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-database-cleanup:integrationTest

Test Runs Flakiness
ClassLevelCleanupSpec > test 1 - insert data and verify it was persisted 0% 🟢
MethodLevelCleanupSpec > test 1 - insert data with @DatabaseCleanup and explicit type on method 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-enable-mvc-check:integrationTest

Test Runs Flakiness
WebMvcDefaultsFunctionalSpec > a classpath:/public resource is not served at the context root 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded DELETE body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded PATCH body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded #httpMethod body is parsed into request parameters > a form-encoded PUT body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > a form-encoded POST body is parsed into request parameters 0% 🟢
WebMvcDefaultsFunctionalSpec > locale resolution follows the Accept-Language header and the lang request parameter is ignored 0% 🟢
WebMvcDefaultsFunctionalSpec > no static index.html welcome page is served for the unmapped root path 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-external-configuration:integrationTest (first 40 of 49)

Test Runs Flakiness
ConfigurationPrioritySpec > TEST_HOME environment variable from build.gradle is accessible 0% 🟢
ConfigurationPrioritySpec > active profiles affect configuration 0% 🟢
ConfigurationPrioritySpec > application.yml configuration is loaded 0% 🟢
ConfigurationPrioritySpec > can list all property source names 0% 🟢
ConfigurationPrioritySpec > deeply nested properties are accessible 0% 🟢
ConfigurationPrioritySpec > default values work when property not found 0% 🟢
ConfigurationPrioritySpec > environment variables are accessible 0% 🟢
ConfigurationPrioritySpec > environment variables source exists 0% 🟢
ConfigurationPrioritySpec > grails config locations property is recognized 0% 🟢
ConfigurationPrioritySpec > grails profile is set 0% 🟢
ConfigurationPrioritySpec > multiple property sources are registered 0% 🟢
ConfigurationPrioritySpec > nested property with map value 0% 🟢
ConfigurationPrioritySpec > placeholders in configuration are resolved 0% 🟢
ConfigurationPrioritySpec > property resolver uses correct precedence 0% 🟢
ConfigurationPrioritySpec > property sources have defined order 0% 🟢
ConfigurationPrioritySpec > required property throws exception when missing 0% 🟢
ConfigurationPrioritySpec > string to boolean conversion works 0% 🟢
ConfigurationPrioritySpec > string to integer conversion works 0% 🟢
ConfigurationPrioritySpec > string to list conversion works for MIME types 0% 🟢
ConfigurationPrioritySpec > system properties are accessible 0% 🟢
ConfigurationPrioritySpec > system properties source exists 0% 🟢
ConfigurationPrioritySpec > system property java.home is accessible 0% 🟢
EnvironmentConfigurationSpec > Environment object provides utility methods 0% 🟢
EnvironmentConfigurationSpec > GSP encoding configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > Hibernate cache configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > MIME types are configured correctly 0% 🟢
EnvironmentConfigurationSpec > application.yml configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > can access configuration as flat properties 0% 🟢
EnvironmentConfigurationSpec > can access nested configuration properties 0% 🟢
EnvironmentConfigurationSpec > can check if running in specific environment 0% 🟢
EnvironmentConfigurationSpec > configuration is immutable at runtime by default 0% 🟢
EnvironmentConfigurationSpec > configuration supports default values 0% 🟢
EnvironmentConfigurationSpec > configuration supports type conversion 0% 🟢
EnvironmentConfigurationSpec > current environment is TEST 0% 🟢
EnvironmentConfigurationSpec > environment-specific datasource configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > grails application reports test environment 0% 🟢
EnvironmentConfigurationSpec > grails profile is correctly set 0% 🟢
EnvironmentConfigurationSpec > info properties contain app metadata 0% 🟢
EnvironmentConfigurationSpec > spring environment contains test profile 0% 🟢
EnvironmentConfigurationSpec > test environment uses test database URL 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-geb-gebconfig:integrationTest

Test Runs Flakiness
GebConfigSpec > should use custom RemoteWebDriver from GebConfig.groovy 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-gorm:integrationTest (first 40 of 227)

Test Runs Flakiness
AbstractParentSpec > Test that persisting a domain class with an abstract parent works 0% 🟢
BindingOutsideRequestSpec > Save nested company nested with webrequest 0% 🟢
BindingOutsideRequestSpec > Save nested company without webrequest (Quartz/Bpotstrap) 0% 🟢
BookSpec > Test dynamic finders work 0% 🟢
DirtyCheckBindingSpec > an explicit bindable:true id constraint declared on a @DirtyCheck base is inherited and binds over HTTP 0% 🟢
DirtyCheckBindingSpec > bindData over HTTP does not bind id or version on a domain extending a @DirtyCheck base 0% 🟢
DirtyCheckBindingSpec > binding only a regular property over HTTP leaves id and version null 0% 🟢
ExistsSpec > exists returns correct result with multiple rows in table 0% 🟢
ExistsSpec > exists returns false for non-existent id 0% 🟢
ExistsSpec > exists returns true for persisted entity 0% 🟢
FieldsValidationSpec > author email validation shows error for invalid format 0% 🟢
GormCascadeOperationsSpec > test addTo creates bidirectional link 0% 🟢
GormCascadeOperationsSpec > test batch insert with associations 0% 🟢
GormCascadeOperationsSpec > test belongsTo allows orphan removal 0% 🟢
GormCascadeOperationsSpec > test bidirectional navigation 0% 🟢
GormCascadeOperationsSpec > test cascade save with nested new objects 0% 🟢
GormCascadeOperationsSpec > test collection operations on hasMany 0% 🟢
GormCascadeOperationsSpec > test deleting child does not delete parent 0% 🟢
GormCascadeOperationsSpec > test dirty checking with associations 0% 🟢
GormCascadeOperationsSpec > test hasMany cascade save for City and Users 0% 🟢
GormCascadeOperationsSpec > test lazy loading of associations 0% 🟢
GormCascadeOperationsSpec > test removeFrom breaks bidirectional link 0% 🟢
GormCascadeOperationsSpec > test removing user from city 0% 🟢
GormCascadeOperationsSpec > test saving child with belongsTo saves parent reference 0% 🟢
GormCascadeOperationsSpec > test saving parent cascades to children with addTo 0% 🟢
GormCascadeOperationsSpec > test updating multiple children 0% 🟢
GormCascadeOperationsSpec > test updating parent does not affect children unless changed 0% 🟢
GormCriteriaQueriesSpec > test HQL aggregate functions 0% 🟢
GormCriteriaQueriesSpec > test HQL group by 0% 🟢
GormCriteriaQueriesSpec > test HQL join query 0% 🟢
GormCriteriaQueriesSpec > test HQL with named parameters 0% 🟢
GormCriteriaQueriesSpec > test HQL with pagination 0% 🟢
GormCriteriaQueriesSpec > test HQL with positional parameters 0% 🟢
GormCriteriaQueriesSpec > test basic HQL query 0% 🟢
GormCriteriaQueriesSpec > test criteria with association 0% 🟢
GormCriteriaQueriesSpec > test criteria with association property 0% 🟢
GormCriteriaQueriesSpec > test criteria with avg projection 0% 🟢
GormCriteriaQueriesSpec > test criteria with between restriction 0% 🟢
GormCriteriaQueriesSpec > test criteria with count projection 0% 🟢
GormCriteriaQueriesSpec > test criteria with different comparison operators: #description 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-graphql-grails-docs-app:integrationTest

Test Runs Flakiness
AuthorIntegrationSpec > test creating an author 0% 🟢
SpeakerIntegrationSpec > test creating a speaker 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-graphql-grails-tenant-app:integrationTest

Test Runs Flakiness
UserIntegrationSpec > test creating a user without a company 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-gsp-layout:test

Test Runs Flakiness
ApplicationTagLibSpec 0% 🟢
FlashMessagesTagLibSpec 0% 🟢
ValidationTagLibSpec 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-gsp-sitemesh3:integrationTest

Test Runs Flakiness
EndToEndSpec > apply layout to a template 0% 🟢
EndToEndSpec > apply layout to a template that is a full document 0% 🟢
EndToEndSpec > apply layout to content fetched from a url 0% 🟢
EndToEndSpec > apply layout to the output of another controller action 0% 🟢
EndToEndSpec > async multiple levels of layouts 1% 🟡
EndToEndSpec > async simple layout 0% 🟢
EndToEndSpec > model is available to the layout being applied 0% 🟢
EndToEndSpec > multiline title 0% 🟢
EndToEndSpec > multiple levels of layouts 0% 🟢
EndToEndSpec > parameters 0% 🟢
EndToEndSpec > parameters with logic 0% 🟢
EndToEndSpec > parse attribute forces a SiteMesh parse of the tag body 0% 🟢
EndToEndSpec > simple layout 0% 🟢
EndToEndSpec > title in subtemplate 0% 🟢
GrailsLayoutSpec > 404 Error 0% 🟢
GrailsLayoutSpec > Controller 500 Example 0% 🟢
GrailsLayoutSpec > View 500 Example 0% 🟢
GrailsLayoutSpec > decorator chaining 0% 🟢
GrailsLayoutSpec > forced layout 0% 🟢
GrailsLayoutSpec > jsp demo 0% 🟢
GrailsLayoutSpec > text 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-hyphenated:integrationTest

Test Runs Flakiness
FooBarControllerSpec > test default action 0% 🟢
FooBarControllerSpec > test returns map 0% 🟢
FooBarControllerSpec > test returns null 0% 🟢
HyphenateControllerSpec > test something 0% 🟢
NameSpacedControllerSpec > test default action 0% 🟢
NameSpacedControllerSpec > test returns map 0% 🟢
NameSpacedControllerSpec > test returns null 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-issue-10279:integrationTest

Test Runs Flakiness
ActuatorEnvClosureSpec > actuator /env endpoint response contains normal string properties from application.groovy 0% 🟢
ActuatorEnvClosureSpec > actuator /env endpoint returns 200 when application.groovy contains closure-valued config 0% 🟢
ActuatorEnvClosureSpec > actuator /health endpoint returns 200 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-issue-11767:integrationTest

Test Runs Flakiness
ConfigLoadingSpec > #beanType beans can load plugin config values 0% 🟢
ConfigLoadingSpec > #beanType beans can load plugin config values > App Groovy Micronaut beans can load plugin config values 0% 🟢
ConfigLoadingSpec > #beanType beans can load plugin config values > Plugin Groovy Micronaut beans can load plugin config values 0% 🟢
ConfigLoadingSpec > #beanType beans can load plugin config values > Plugin Groovy Spring beans can load plugin config values 0% 🟢
ConfigLoadingSpec > #beanType beans can load plugin config values > Plugin Java Micronaut beans can load plugin config values 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-issue-views-182:integrationTest

Test Runs Flakiness
CustomErrorSpec > it is possible to use gson views for handling exception errors 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-jetty:integrationTest

Test Runs Flakiness
JettySessionSpec > request params can be processed and stored in session on a Jetty-backed Grails app 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-latency:integrationTest

Test Runs Flakiness
LatencyFunctionalSpec > requests matching the latency url patterns are delayed by at least the configured minimum 0% 🟢
LatencyFunctionalSpec > requests outside the latency url patterns are not delayed 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-micronaut-groovy-only:integrationTest

Test Runs Flakiness
BeanInjectionServiceSpec > test autowire Grails service by type 0% 🟢
BeanInjectionServiceSpec > test injecting Micronaut beans in a Grails service 0% 🟢
BeanInjectionServiceSpec > test there are 1 bean for a Grails service when we inject Micronaut bean in it 0% 🟢
MicronautContextSpec > both contexts share the same application lifecycle 0% 🟢
MicronautContextSpec > grails services are accessible from spring context 0% 🟢
MicronautContextSpec > micronaut application context is available 0% 🟢
MicronautContextSpec > micronaut beans can be retrieved from micronaut context 0% 🟢
MicronautContextSpec > micronaut context has correct environment 0% 🟢
MicronautContextSpec > spring application context is available 0% 🟢
MicronautQualifierSpec > @Named('regular') qualifier injects correct bean 0% 🟢
MicronautQualifierSpec > @Named('special') qualifier injects correct bean 0% 🟢
MicronautQualifierSpec > beans can be distinguished by their class type 0% 🟢
MicronautQualifierSpec > collection injection includes all implementations 0% 🟢
MicronautQualifierSpec > custom @Qualified annotation injects correct bean 0% 🟢
MicronautQualifierSpec > each bean implementation returns unique name 0% 🟢
MicronautQualifierSpec > primary bean is injected when no qualifier specified 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-micronaut-hibernate5:integrationTest

Test Runs Flakiness
ApplicationStartupSpec > test the application starts and the home page renders 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-micronaut-hibernate7:integrationTest

Test Runs Flakiness
ApplicationStartupSpec > test the application starts and the home page renders 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-micronaut:integrationTest (first 40 of 95)

Test Runs Flakiness
BeanInjectionServiceSpec > test autowire Grails service by type 0% 🟢
BeanInjectionServiceSpec > test injecting Micronaut beans in a Grails service 0% 🟢
BeanInjectionServiceSpec > test there are 1 bean for a Grails service when we inject Micronaut bean in it 0% 🟢
MicronautBeanDuplicationSpec > @ConfigurationProperties bean appears exactly once in Spring context 0% 🟢
MicronautBeanDuplicationSpec > @ConfigurationProperties bean in Spring is same instance as in Micronaut context 0% 🟢
MicronautBeanDuplicationSpec > @Factory/@Bean created bean appears exactly once in Spring context 0% 🟢
MicronautBeanDuplicationSpec > Grails service appears exactly once in Spring context 0% 🟢
MicronautBeanDuplicationSpec > Java @Singleton bean appears exactly once in Spring context 0% 🟢
MicronautBeanDuplicationSpec > Micronaut context has exactly 4 NamedService implementations 0% 🟢
MicronautBeanDuplicationSpec > NamedService implementations appear exactly 4 times in Spring context 0% 🟢
MicronautBeanDuplicationSpec > bridged Micronaut bean in Spring is same instance as in Micronaut context 0% 🟢
MicronautBeanDuplicationSpec > factory-created bean in Spring is same instance as in Micronaut context 0% 🟢
MicronautBeanTypesSpec > @ConfigurationProperties bean reflects application.yml config 0% 🟢
MicronautBeanTypesSpec > Factory-created bean is a singleton instance 0% 🟢
MicronautBeanTypesSpec > Groovy @Factory/@Bean created bean is available via Spring autowiring 0% 🟢
MicronautBeanTypesSpec > Java @Singleton bean is a singleton instance 0% 🟢
MicronautBeanTypesSpec > Java @Singleton bean is available via Spring autowiring 0% 🟢
MicronautBeanTypesSpec > Java @Singleton bean is resolvable by its interface type 0% 🟢
MicronautContextSpec > both contexts share the same application lifecycle 0% 🟢
MicronautContextSpec > grails services are accessible from spring context 0% 🟢
MicronautContextSpec > micronaut application context is available 0% 🟢
MicronautContextSpec > micronaut beans can be retrieved from micronaut context 0% 🟢
MicronautContextSpec > micronaut context has correct environment 0% 🟢
MicronautContextSpec > spring application context is available 0% 🟢
MicronautDeclarativeClientSpec > declarative @Client handles 404 response from ersatz mock 0% 🟢
MicronautDeclarativeClientSpec > declarative @Client interface is registered as a bean in Micronaut context 0% 🟢
MicronautDeclarativeClientSpec > declarative @Client invokes endpoint through load balancing path 0% 🟢
MicronautDeclarativeClientSpec > declarative @Client sends DELETE with path variable 0% 🟢
MicronautDeclarativeClientSpec > declarative @Client sends GET with path variable 0% 🟢
MicronautDeclarativeClientSpec > declarative @Client sends POST and receives mock response 0% 🟢
MicronautDeclarativeClientSpec > declarative @Client sends PUT and receives mock response 0% 🟢
MicronautDeclarativeClientSpec > declarative @Client surfaces 500 responses 0% 🟢
MicronautErsatzAdvancedSpec > Grails service error handling wraps Micronaut client error from ersatz 0% 🟢
MicronautErsatzAdvancedSpec > HEAD request via declarative client returns only headers from ersatz 0% 🟢
MicronautErsatzAdvancedSpec > Micronaut client handles 401 Unauthorized from ersatz 0% 🟢
MicronautErsatzAdvancedSpec > Micronaut client handles 403 Forbidden from ersatz 0% 🟢
MicronautErsatzAdvancedSpec > Micronaut client handles 429 Too Many Requests from ersatz 0% 🟢
MicronautErsatzAdvancedSpec > OPTIONS request via declarative client through ersatz mock 0% 🟢
MicronautErsatzAdvancedSpec > PATCH request via declarative client through ersatz mock 0% 🟢
MicronautErsatzAdvancedSpec > class-level @Header annotation sends header on every request through ersatz 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-plugins-exploded:integrationTest

Test Runs Flakiness
PluginDependencySpec > all plugins have required metadata 0% 🟢
PluginDependencySpec > exploded plugin declares loadAfter dependency 0% 🟢
PluginDependencySpec > exploded plugin metadata is correct 0% 🟢
PluginDependencySpec > later plugins can override earlier plugin configuration 0% 🟢
PluginDependencySpec > multiple plugins can be loaded simultaneously 0% 🟢
PluginDependencySpec > plugin can access beans from dependencies 0% 🟢
PluginDependencySpec > plugin configuration is merged into application config 0% 🟢
PluginDependencySpec > plugin manager bean is the correct type 0% 🟢
PluginDependencySpec > plugin manager provides consistent state 0% 🟢
PluginDependencySpec > plugin manager respects loadAfter declarations 0% 🟢
PluginDependencySpec > plugin profiles are configured 0% 🟢
PluginDependencySpec > plugins are discoverable by pattern 0% 🟢
PluginDependencySpec > plugins can register controllers 0% 🟢
PluginDependencySpec > plugins can register custom beans 0% 🟢
PluginDependencySpec > plugins can register domains 0% 🟢
PluginDependencySpec > plugins can register services 0% 🟢
PluginDependencySpec > plugins do not interfere with each other 0% 🟢
PluginDependencySpec > spring security core plugin is loaded (dependency) 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-plugins-issue11005:integrationTest

Test Runs Flakiness
DummyDependencyIntegrationSpec > test dependency defined in resources.groovy is injected 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-plugins-loadsecond:integrationTest

Test Runs Flakiness
PluginLoadOrderSpec > can check if plugin is available 0% 🟢
PluginLoadOrderSpec > can list all loaded plugins 0% 🟢
PluginLoadOrderSpec > getGrailsPlugin returns null for non-existent plugin 0% 🟢
PluginLoadOrderSpec > grails application is available 0% 🟢
PluginLoadOrderSpec > hasGrailsPlugin returns false for non-existent plugin 0% 🟢
PluginLoadOrderSpec > loadAfter is declared correctly 0% 🟢
PluginLoadOrderSpec > loadsecond plugin is loaded 0% 🟢
PluginLoadOrderSpec > plugin configuration is loaded from plugin.yml 0% 🟢
PluginLoadOrderSpec > plugin count is greater than zero 0% 🟢
PluginLoadOrderSpec > plugin description is set 0% 🟢
PluginLoadOrderSpec > plugin documentation URL is set 0% 🟢
PluginLoadOrderSpec > plugin excludes are configured 0% 🟢
PluginLoadOrderSpec > plugin grails version constraint is set 0% 🟢
PluginLoadOrderSpec > plugin has correct metadata 0% 🟢
PluginLoadOrderSpec > plugin is enabled 0% 🟢
PluginLoadOrderSpec > plugin manager is available 0% 🟢
PluginLoadOrderSpec > plugin profiles are configured 0% 🟢
PluginLoadOrderSpec > plugin title is set 0% 🟢
PluginLoadOrderSpec > plugin version is set 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-scaffolding-fields:integrationTest (first 40 of 105)

Test Runs Flakiness
CrudFunctionalSpec > Can navigate from list to create to list 0% 🟢
CrudFunctionalSpec > Can navigate from list to show to edit to show 0% 🟢
CrudFunctionalSpec > Create department with valid data succeeds 0% 🟢
CrudFunctionalSpec > Create employee with valid data succeeds 0% 🟢
CrudFunctionalSpec > Create page displays correctly 0% 🟢
CrudFunctionalSpec > Delete removes employee from list 0% 🟢
CrudFunctionalSpec > Department list page displays correctly 0% 🟢
CrudFunctionalSpec > Edit employee with valid data succeeds 0% 🟢
CrudFunctionalSpec > Edit page displays correctly with existing data 0% 🟢
CrudFunctionalSpec > Employee list page displays correctly 0% 🟢
CrudFunctionalSpec > List page shows create new button 0% 🟢
CrudFunctionalSpec > Project list page displays correctly 0% 🟢
CrudFunctionalSpec > Show page displays employee details 0% 🟢
CrudFunctionalSpec > Show page has edit and delete buttons 0% 🟢
CustomTemplatesSpec > custom biography wrapper template is used on create page 0% 🟢
FieldTypesSpec > Association select contains existing options 0% 🟢
FieldTypesSpec > BelongsTo association renders as select dropdown 0% 🟢
FieldTypesSpec > BigDecimal property renders as number input 0% 🟢
FieldTypesSpec > Boolean property renders as checkbox 0% 🟢
FieldTypesSpec > Byte array property renders as file input 0% 🟢
FieldTypesSpec > Currency property renders as select 0% 🟢
FieldTypesSpec > Date property renders as date input or text 0% 🟢
FieldTypesSpec > Embedded object properties are rendered inline 0% 🟢
FieldTypesSpec > Enum property renders as select dropdown 0% 🟢
FieldTypesSpec > Enum select contains all enum values 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field active is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field email is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field firstName is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field lastName is present on create form 0% 🟢
FieldTypesSpec > Fields have associated labels 0% 🟢
FieldTypesSpec > HasMany association renders as multi-select or list 0% 🟢
FieldTypesSpec > Integer property renders as number input 0% 🟢
FieldTypesSpec > Locale property renders as select 0% 🟢
FieldTypesSpec > Property with inList constraint renders as select 0% 🟢
FieldTypesSpec > Required fields have visual indicator 0% 🟢
FieldTypesSpec > String property renders as text input 0% 🟢
FieldTypesSpec > String property with email constraint renders as email input 0% 🟢
FieldTypesSpec > String property with widget:textarea renders as textarea 0% 🟢
FieldTypesSpec > TimeZone property renders as select 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-test-phases:integrationTest

Test Runs Flakiness
GreetingServiceIntegrationSpec > test greeting service is wired in integration context 0% 🟢

CI / Functional Tests (Java 25, indy=false, shard 1) > :grails-test-examples-undertow:integrationTest

Test Runs Flakiness
UndertowSessionSpec > request params can be processed and stored in session on an Undertow-backed Grails app 0% 🟢
UndertowSessionSpec > the application runs on the Undertow embedded servlet container 0% 🟢

CI / Redis Tests (25, 7.4) > :grails-test-examples-redis:integrationTest

Test Runs Flakiness
HoldersIntegrationSpec > ensure holders wires up findApplicationContext in integration tests 0% 🟢
HoldersIntegrationSpec > ensure holders wires up getGrailsApplication getMainContext in integration tests 0% 🟢
HoldersIntegrationSpec > ensure holders wires up getGrailsApplication getParentContext in integration tests 0% 🟢
MemoizeAnnotationSpec > testMemoizeAnnotationExpire 0% 🟢
MemoizeObjectAnnotationSpec > testMemoizeAnnotationExpire 0% 🟢
MemoizeObjectAnnotationSpec > testMemoizeSimpleObject 0% 🟢
RedisIntegrationSpec > testMemoizeDomainIdList 0% 🟢
RedisIntegrationSpec > testMemoizeDomainList 0% 🟢
RedisIntegrationSpec > testMemoizeDomainListWithExpire 0% 🟢
RedisIntegrationSpec > testMemoizeDomainObject 0% 🟢
RedisMemoizeDomainSpec > get AST transformed domain object method 0% 🟢
RedisMemoizeServiceSpec > get AST transformed domain list using key and class 0% 🟢
RedisMemoizeServiceSpec > get AST transformed domain object using title 0% 🟢
RedisMemoizeServiceSpec > get AST transformed hash field using maps foo as key 0% 🟢
RedisMemoizeServiceSpec > get AST transformed hash using maps foo as key 0% 🟢
RedisMemoizeServiceSpec > get AST transformed list using item 0 as key 0% 🟢
RedisMemoizeServiceSpec > get AST transformed method using object property key 0% 🟢
RedisMemoizeServiceSpec > get AST transformed method using simple key closure 0% 🟢
RedisMemoizeServiceSpec > get AST transformed method using simple string key property 0% 🟢
RedisMemoizeServiceSpec > get AST transformed method using simple string key property and expire 0% 🟢
RedisMemoizeServiceSpec > get AST transformed score using map key 0% 🟢
RedisMemoizeServiceSpec > make sure redis is behaving correctly on non-annotated methods 0% 🟢

CI / Spring Security CAS Functional Tests (cas) > :grails-test-examples-spring-security-cas-test1:integrationTest

Test Runs Flakiness
CasLoginSpec > a user authenticated at CAS reaches a ROLE_USER action 0% 🟢
CasLoginSpec > a user without the role is denied a ROLE_ADMIN action 0% 🟢
CasLoginSpec > an admin authenticated at CAS reaches a ROLE_ADMIN action 0% 🟢
CasLoginSpec > an unauthenticated request is redirected to the CAS login page for this service 0% 🟢
CasLoginSpec > bad credentials do not authenticate 0% 🟢
CasNoProxyReceptorSpec > a normal CAS login still works without proxy settings 0% 🟢
CasNoProxyReceptorSpec > no proxy ticket can be obtained when the receptor is not configured 0% 🟢
CasNoProxyReceptorSpec > the application starts and wires the CAS filter with no proxy receptor configured 0% 🟢
CasNoProxyReceptorSpec > the receptor path is left to the application when no proxy receptor is configured 0% 🟢
CasSingleSignOutSpec > a CAS logout request invalidates the session that the service ticket authenticated 0% 🟢
CasSingleSignOutSpec > a logout request for an unrelated ticket leaves the session alone 0% 🟢

CI / Spring Security CAS Functional Tests (casNoSingleSignout) > :grails-test-examples-spring-security-cas-test1:integrationTest

Test Runs Flakiness
CasLoginSpec > a user authenticated at CAS reaches a ROLE_USER action 0% 🟢
CasLoginSpec > a user without the role is denied a ROLE_ADMIN action 0% 🟢
CasLoginSpec > an admin authenticated at CAS reaches a ROLE_ADMIN action 0% 🟢
CasLoginSpec > an unauthenticated request is redirected to the CAS login page for this service 0% 🟢
CasLoginSpec > bad credentials do not authenticate 0% 🟢
CasNoProxyReceptorSpec > a normal CAS login still works without proxy settings 0% 🟢
CasNoProxyReceptorSpec > no proxy ticket can be obtained when the receptor is not configured 0% 🟢
CasNoProxyReceptorSpec > the application starts and wires the CAS filter with no proxy receptor configured 0% 🟢
CasNoProxyReceptorSpec > the receptor path is left to the application when no proxy receptor is configured 0% 🟢
CasNoSingleSignOutSpec > a CAS logout request is ignored when single signout is not enabled 0% 🟢
CasNoSingleSignOutSpec > session fixation prevention is left in place when single signout is not enabled 0% 🟢

CI / Spring Security CAS Functional Tests (casProxy) > :grails-test-examples-spring-security-cas-test1:integrationTest

Test Runs Flakiness
CasLoginSpec > a user authenticated at CAS reaches a ROLE_USER action 0% 🟢
CasLoginSpec > a user without the role is denied a ROLE_ADMIN action 0% 🟢
CasLoginSpec > an admin authenticated at CAS reaches a ROLE_ADMIN action 0% 🟢
CasLoginSpec > an unauthenticated request is redirected to the CAS login page for this service 0% 🟢
CasLoginSpec > bad credentials do not authenticate 0% 🟢
CasProxyTicketSpec > a normal CAS login still works with proxy settings configured 0% 🟢
CasProxyTicketSpec > a proxy ticket can be obtained for the logged-in user 0% 🟢
CasProxyTicketSpec > the receptor path is consumed by the CAS filter rather than the application 0% 🟢
CasSingleSignOutSpec > a CAS logout request invalidates the session that the service ticket authenticated 0% 🟢
CasSingleSignOutSpec > a logout request for an unrelated ticket leaves the session alone 0% 🟢

CI / Spring Security Config Functional Tests (annotation) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest (first 40 of 44)

Test Runs Flakiness
AnnotationSecuritySpec > authenticated user can access secured restful domain 0% 🟢
AnnotationSecuritySpec > check allowed for admin1 0% 🟢
AnnotationSecuritySpec > check allowed for admin2 0% 🟢
AnnotationSecuritySpec > create roles 0% 🟢
AnnotationSecuritySpec > create users 0% 🟢
AnnotationSecuritySpec > generated Resource controllers can have inherited secured actions 0% 🟢
AnnotationSecuritySpec > restful domains can be secured 0% 🟢
AnnotationSecuritySpec > restful domains can be secured > restful domains can be secured [action: thing, #0] 0% 🟢
AnnotationSecuritySpec > restful domains can be secured > restful domains can be secured [action: thing/create, #3] 0% 🟢
AnnotationSecuritySpec > restful domains can be secured > restful domains can be secured [action: thing/delete, #5] 0% 🟢
AnnotationSecuritySpec > restful domains can be secured > restful domains can be secured [action: thing/edit, #4] 0% 🟢
AnnotationSecuritySpec > restful domains can be secured > restful domains can be secured [action: thing/index, #1] 0% 🟢
AnnotationSecuritySpec > restful domains can be secured > restful domains can be secured [action: thing/show/1, #2] 0% 🟢
AnnotationSecuritySpec > secured urls not visible without login 0% 🟢
InheritanceSecuritySpec > should redirect to login page for anonymous 0% 🟢
InheritanceSecuritySpec > should redirect to login page for anonymous > should redirect to login page for anonymous [uri: base/delete, #2] 0% 🟢
InheritanceSecuritySpec > should redirect to login page for anonymous > should redirect to login page for anonymous [uri: base/index, #0] 0% 🟢
InheritanceSecuritySpec > should redirect to login page for anonymous > should redirect to login page for anonymous [uri: base/update, #4] 0% 🟢
InheritanceSecuritySpec > should redirect to login page for anonymous > should redirect to login page for anonymous [uri: extended/delete, #3] 0% 🟢
InheritanceSecuritySpec > should redirect to login page for anonymous > should redirect to login page for anonymous [uri: extended/index, #1] 0% 🟢
InheritanceSecuritySpec > should redirect to login page for anonymous > should redirect to login page for anonymous [uri: extended/update, #5] 0% 🟢
InheritanceSecuritySpec > verify security for other user 0% 🟢
InheritanceSecuritySpec > verify security for testuser 0% 🟢
NamespaceSecuritySpec > #path should redirect to login page for anonymous 0% 🟢
NamespaceSecuritySpec > #path should redirect to login page for anonymous > api/v1/books should redirect to login page for anonymous 0% 🟢
NamespaceSecuritySpec > #path should redirect to login page for anonymous > api/v1/books.json should redirect to login page for anonymous 0% 🟢
NamespaceSecuritySpec > #path should redirect to login page for anonymous > api/v1/movies should redirect to login page for anonymous 0% 🟢
NamespaceSecuritySpec > #path should redirect to login page for anonymous > api/v1/movies.json should redirect to login page for anonymous 0% 🟢
NamespaceSecuritySpec > api not allowed for testuser 0% 🟢
NamespaceSecuritySpec > api not allowed for testuser > api not allowed for testuser [format: , #0] 0% 🟢
NamespaceSecuritySpec > api not allowed for testuser > api not allowed for testuser [format: .json, #1] 0% 🟢
NamespaceSecuritySpec > namespaced controller with same name can have different secured annotations - open 0% 🟢
NamespaceSecuritySpec > namespaced controller with same name can have different secured annotations - secured 0% 🟢
NamespaceSecuritySpec > verify security for testuser_books 0% 🟢
NamespaceSecuritySpec > verify security for testuser_books > verify security for testuser_books [format: , #0] 0% 🟢
NamespaceSecuritySpec > verify security for testuser_books > verify security for testuser_books [format: .json, #1] 0% 🟢
NamespaceSecuritySpec > verify security for testuser_books_and_movies 0% 🟢
NamespaceSecuritySpec > verify security for testuser_books_and_movies > verify security for testuser_books_and_movies [format: , #0] 0% 🟢
NamespaceSecuritySpec > verify security for testuser_books_and_movies > verify security for testuser_books_and_movies [format: .json, #1] 0% 🟢
NamespaceSecuritySpec > verify security for testuser_movies 0% 🟢

CI / Spring Security Config Functional Tests (basic) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest

Test Runs Flakiness
BasicAuthSecuritySpec > create roles 0% 🟢
RoleSpec > there are no roles initially 0% 🟢
UserSpec > there are no users initially 0% 🟢

CI / Spring Security Config Functional Tests (basicCacheUsers) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest

Test Runs Flakiness
BasicAuthCacheUsersSecuritySpec > check userDetails caching 0% 🟢
BasicAuthCacheUsersSecuritySpec > create roles 0% 🟢
BasicAuthCacheUsersSecuritySpec > create users 0% 🟢
RoleSpec > there are no roles initially 0% 🟢
UserSpec > there are no users initially 0% 🟢

CI / Spring Security Config Functional Tests (bcrypt) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest

Test Runs Flakiness
BCryptSpec > create a user 0% 🟢
BCryptSpec > test bcrypt 0% 🟢

CI / Spring Security Config Functional Tests (issue503) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest

Test Runs Flakiness
CustomFilterRegistrationSpec > GET request to /assets/spinner.gif should not throw error because custom filter is excluded 0% 🟢

CI / Spring Security Config Functional Tests (misc) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest

Test Runs Flakiness
DisableSpec > disable account 0% 🟢
DisableSpec > expire account 0% 🟢
DisableSpec > expire password 0% 🟢
DisableSpec > lock account 0% 🟢
MiscSpec > controller methods authenticated 0% 🟢
MiscSpec > controller methods unauthenticated 0% 🟢
MiscSpec > hierarchical roles 0% 🟢
MiscSpec > salted password 0% 🟢
MiscSpec > switch user 0% 🟢
MiscSpec > taglibs admin 0% 🟢
MiscSpec > taglibs unauthenticated 0% 🟢
MiscSpec > taglibs user 0% 🟢
MiscSpec > test Servlet API methods authenticated 0% 🟢
MiscSpec > test Servlet API methods unauthenticated 0% 🟢
MiscSpec > test controller with annotated index action, authenticated 0% 🟢
MiscSpec > test controller with annotated index action, unauthenticated 0% 🟢
MiscSpec > test hyphenated 0% 🟢

CI / Spring Security Config Functional Tests (putWithParams) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest

Test Runs Flakiness
TestFormParamsControllerSpec > PATCH request to secured endpoint with parameters as x-www-form-urlencoded 0% 🟢
TestFormParamsControllerSpec > PATCH request with NULL Content-Type 0% 🟢
TestFormParamsControllerSpec > PATCH request with NULL Content-Type and parameters in the URL 0% 🟢
TestFormParamsControllerSpec > PATCH request with no parameters 0% 🟢
TestFormParamsControllerSpec > PATCH request with parameters as x-www-form-urlencoded 0% 🟢
TestFormParamsControllerSpec > PATCH request with parameters in the URL 0% 🟢
TestFormParamsControllerSpec > PUT request to secured endpoint with parameters as x-www-form-urlencoded 0% 🟢
TestFormParamsControllerSpec > PUT request with NULL Content-Type 0% 🟢
TestFormParamsControllerSpec > PUT request with NULL Content-Type and parameters in the URL 0% 🟢
TestFormParamsControllerSpec > PUT request with no parameters 0% 🟢
TestFormParamsControllerSpec > PUT request with parameters as x-www-form-urlencoded 0% 🟢
TestFormParamsControllerSpec > PUT request with parameters in the URL 0% 🟢

CI / Spring Security Config Functional Tests (requestmap) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest

Test Runs Flakiness
RequestmapSecuritySpec > check allowed for admin1 0% 🟢
RequestmapSecuritySpec > check allowed for user1 0% 🟢
RequestmapSecuritySpec > create requestMaps 0% 🟢
RequestmapSecuritySpec > create roles 0% 🟢
RequestmapSecuritySpec > create users 0% 🟢
RequestmapSecuritySpec > secure page not visible without requestmap 0% 🟢
RequestmapSecuritySpec > secured urls not visible without login 0% 🟢
RequestmapSpec > test request maps are initially present 0% 🟢
RoleSpec > there are no roles initially 0% 🟢
UserSpec > there are no users initially 0% 🟢

CI / Spring Security Config Functional Tests (static) > :grails-test-examples-spring-security-core-functional-test-app:integrationTest

Test Runs Flakiness
RoleSpec > there are no roles initially 0% 🟢
StaticSecuritySpec > check allowed for admin1 0% 🟢
StaticSecuritySpec > check allowed for admin2 0% 🟢
StaticSecuritySpec > create roles 0% 🟢
StaticSecuritySpec > create users 0% 🟢
StaticSecuritySpec > secured urls not visible without login 0% 🟢
UserSpec > there are no users initially 0% 🟢

CI / Spring Security Tests (Java 25, shard 1) > :grails-spring-security:test

Test Runs Flakiness
AjaxAwareAccessDeniedHandlerSpec 0% 🟢
AjaxAwareAuthenticationEntryPointSpec 0% 🟢
AjaxAwareAuthenticationFailureHandlerSpec 0% 🟢
AjaxAwareAuthenticationSuccessHandlerSpec 0% 🟢
AnnotationFilterInvocationDefinitionSpec 0% 🟢
AuthenticatedVetoableDecisionManagerSpec 0% 🟢
ChannelFilterInvocationSecurityMetadataSourceFactoryBeanSpec 0% 🟢
FilterSecurityInterceptorSpec 0% 🟢
HttpMethodOverrideDetectorSpec 0% 🟢
InterceptUrlMapFilterInvocationDefinitionSpec 0% 🟢
IpAddressFilterSpec 0% 🟢
LogoutControllerSpec 0% 🟢
MutableLogoutFilterSpec 0% 🟢
ReflectionUtilsSpec 0% 🟢
RequestmapFilterInvocationDefinitionSpec 0% 🟢
SecurityEventListenerSpec 0% 🟢
SecurityRequestHolderFilterSpec 0% 🟢
SecurityRequestHolderSpec 0% 🟢
SecurityTagLibUnitSpec 0% 🟢
SpringSecurityServiceSpec 0% 🟢
SpringSecurityUtilsSpec 0% 🟢

CI / Spring Security Tests (Java 25, shard 1) > :grails-test-examples-spring-security-acl-functional-test-app:integrationTest (first 40 of 290)

Test Runs Flakiness
AdminFunctionalSpec > check tags 0% 🟢
AdminFunctionalSpec > delete report 15 0% 🟢
AdminFunctionalSpec > edit report 15 0% 🟢
AdminFunctionalSpec > grant edit 16 0% 🟢
AdminFunctionalSpec > view all 0% 🟢
AdminFunctionalSpec > view all > view all [i: 1, #0] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 10, #9] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 100, #99] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 11, #10] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 12, #11] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 13, #12] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 14, #13] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 15, #14] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 16, #15] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 17, #16] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 18, #17] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 19, #18] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 2, #1] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 20, #19] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 21, #20] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 22, #21] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 23, #22] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 24, #23] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 25, #24] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 26, #25] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 27, #26] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 28, #27] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 29, #28] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 3, #2] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 30, #29] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 31, #30] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 32, #31] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 33, #32] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 34, #33] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 35, #34] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 36, #35] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 37, #36] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 38, #37] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 39, #38] 0% 🟢
AdminFunctionalSpec > view all > view all [i: 4, #3] 0% 🟢

CI / Spring Security Tests (Java 25, shard 1) > :grails-test-examples-spring-security-acl-integration-test-app:integrationTest (first 40 of 43)

Test Runs Flakiness
AclServiceSpec > children are cleared from cache when parent is updated 0% 🟢
AclServiceSpec > children are cleared from cache when parent is updated2 0% 🟢
AclServiceSpec > create Acl for a duplicate domain object 0% 🟢
AclServiceSpec > create Acl rejects null parameter 0% 🟢
AclServiceSpec > cumulative permissions 0% 🟢
AclServiceSpec > delete Acl also deletes children 0% 🟢
AclServiceSpec > delete Acl rejects null parameters 0% 🟢
AclServiceSpec > delete Acl removes rows from database 0% 🟢
AclServiceSpec > test lifecycle 0% 🟢
AclUtilServiceSpec > cumulative permission 0% 🟢
AclUtilServiceSpec > delete permission 0% 🟢
AclUtilServiceSpec > foo 0% 🟢
AclUtilServiceSpec > has permission 0% 🟢
AclUtilServiceSpec > permissions let you do things 0% 🟢
GormAclLookupStrategySpec > acls retrieval from cache-only 0% 🟢
GormAclLookupStrategySpec > acls retrieval with custom batch size 0% 🟢
GormAclLookupStrategySpec > acls retrieval with default batch size 0% 🟢
GormAclLookupStrategySpec > all parents are retrieved when child is loaded 0% 🟢
GormAclLookupStrategySpec > read all ObjectIdentities when last element is already cached 0% 🟢
RunAsSpec > authenticated admin 0% 🟢
RunAsSpec > authenticated superuser 0% 🟢
RunAsSpec > authenticated user 0% 🟢
RunAsSpec > not authenticated 0% 🟢
TestClassAnnotatedServiceMetadataSpec > userAnnotated metadata resolves from the live proxied bean 0% 🟢
TestClassAnnotatedServiceSpec > check that the notAnnotated method inherits ROLE_ADMIN from the class annotation 0% 🟢
TestClassAnnotatedServiceSpec > check that the userAnnotated method overides the class annotation and requires authentication 0% 🟢
TestClassAnnotatedServiceSpec > check that the userAnnotated method overrides the class annotation and allows ROLE_USER 0% 🟢
TestClassAnnotatedServiceSpec > check that the userAnnotated method overrides the class annotation and denies ROLE_ADMIN 0% 🟢
TestGrailsAnnotatedServiceSpec > getAllReports() succeeds when authenticated if the user has appropriate grants 0% 🟢
TestGrailsAnnotatedServiceSpec > getReport() fails when authenticated if the user has no grants for the instance 0% 🟢
TestGrailsAnnotatedServiceSpec > getReport() fails when not authenticated 0% 🟢
TestGrailsAnnotatedServiceSpec > getReport() succeeds when authenticated if the user has grants for the instance 0% 🟢
TestGrailsAnnotatedServiceSpec > updateReport() succeeds when authenticated if the user has appropriate grants 0% 🟢
TestSpringAnnotatedServiceSpec > getAllReports() succeeds when authenticated if the user has appropriate grants 0% 🟢
TestSpringAnnotatedServiceSpec > getReport() fails when authenticated if the user has no grants for the instance 0% 🟢
TestSpringAnnotatedServiceSpec > getReport() fails when not authenticated 0% 🟢
TestSpringAnnotatedServiceSpec > getReport() succeeds when authenticated if the user has grants for the instance 0% 🟢
TestSpringAnnotatedServiceSpec > updateReport() succeeds when authenticated if the user has appropriate grants 0% 🟢
TestStaticConfiguredServiceSpec > getAllReports() succeeds when authenticated if the user has appropriate grants 0% 🟢
TestStaticConfiguredServiceSpec > getReport() fails when authenticated if the user has no grants for the instance 0% 🟢

CI / Spring Security Tests (Java 25, shard 1) > :grails-test-examples-spring-security-core-integration-test-app:integrationTest (first 40 of 67)

Test Runs Flakiness
AdditionalLogoutFiltersConfiguredSpec > additional handlers exist 0% 🟢
AdditionalLogoutFiltersConfiguredSpec > invoke 0% 🟢
ClosureX509PrincipalExtractorSpec > x509 principal extractor exception uses i18n message 0% 🟢
GormPersistentTokenRepositorySpec > create new token inserts correct data 0% 🟢
GormPersistentTokenRepositorySpec > removing user tokens deletes data 0% 🟢
GormPersistentTokenRepositorySpec > retrieving token returns correct data 0% 🟢
GormPersistentTokenRepositorySpec > updating token modifies token value and lastUsed 0% 🟢
GormUserDetailsServiceSpec > loadUserByUsername 0% 🟢
GormUserDetailsServiceSpec > loadUserByUsername no roles 0% 🟢
GormUserDetailsServiceSpec > loadUserByUsername not found 0% 🟢
GormUserDetailsServiceSpec > loadUserByUsername skip roles 0% 🟢
GormUserDetailsServiceSpec > loadUserByUsername userLookup.usernameIgnoreCase 0% 🟢
GormUserDetailsServiceSpec > loadUserByUsername using role groups 0% 🟢
PluginMessageBundleSpec > a plugin bundle is resolved in a translated locale 0% 🟢
PluginMessageBundleSpec > a plugin message code resolves from the plugin bundle 0% 🟢
PluginMessageBundleSpec > the application bundle resolves alongside the plugin bundle 0% 🟢
PrePostAuthenticationCheckSpec > post-authentication exception uses i18n message - credentials expired 0% 🟢
PrePostAuthenticationCheckSpec > pre-authentication exception uses i18n message - #test 0% 🟢
PrePostAuthenticationCheckSpec > pre-authentication exception uses i18n message - #test > pre-authentication exception uses i18n message - disabled 0% 🟢
PrePostAuthenticationCheckSpec > pre-authentication exception uses i18n message - #test > pre-authentication exception uses i18n message - expired 0% 🟢
PrePostAuthenticationCheckSpec > pre-authentication exception uses i18n message - #test > pre-authentication exception uses i18n message - locked 0% 🟢
ReflectionUtilsIntegrationSpec > loadAllRequestmaps 0% 🟢
RoleGroupSpec > RoleGroupRole create 0% 🟢
RoleGroupSpec > RoleGroupRole equals and hashCode 0% 🟢
RoleGroupSpec > RoleGroupRole exists 0% 🟢
RoleGroupSpec > RoleGroupRole get 0% 🟢
RoleGroupSpec > RoleGroupRole remove 0% 🟢
RoleGroupSpec > RoleGroupRole removeAllByRole 0% 🟢
RoleGroupSpec > RoleGroupRole removeAllByRoleGroup 0% 🟢
RoleGroupSpec > UserRoleGroup create 0% 🟢
RoleGroupSpec > UserRoleGroup equals and hashCode 0% 🟢
RoleGroupSpec > UserRoleGroup exists 0% 🟢
RoleGroupSpec > UserRoleGroup get 0% 🟢
RoleGroupSpec > UserRoleGroup remove 0% 🟢
RoleGroupSpec > UserRoleGroup removeAllByRoleGroup 0% 🟢
RoleGroupSpec > UserRoleGroup removeAllByUser 0% 🟢
RoleGroupSpec > roleGroup get roles 0% 🟢
SecurityAutoConfigurationExcluderIntegrationSpec > SecurityAutoConfigurationExcluder class is on the classpath 0% 🟢
SecurityAutoConfigurationExcluderIntegrationSpec > no Spring Boot SecurityFilterChain bean is registered alongside the plugin 0% 🟢
SecurityAutoConfigurationExcluderIntegrationSpec > no Spring Boot in-memory UserDetailsService is registered alongside the plugin 0% 🟢

CI / Spring Security Tests (Java 25, shard 1) > :grails-test-examples-spring-security-core-misc-functional-test-app-group:integrationTest

Test Runs Flakiness
SecuredControllerSpec > test login as sherlock, sherlock belongs to detective groups. All detectives have the role ADMIN 0% 🟢
SecuredControllerSpec > test login as watson, watson belongs to detective groups. All detectives have the role ADMIN 1% 🟡

CI / Spring Security Tests (Java 25, shard 1) > :grails-test-examples-spring-security-core-misc-functional-test-app-roles:integrationTest

Test Runs Flakiness
SecuredControllerSpec > test RoleHierarchyEntry lifecycle 0% 🟢

CI / Spring Security Tests (Java 25, shard 1) > :grails-test-examples-spring-security-ldap-custom-user-details-context-mapper:integrationTest

Test Runs Flakiness
CustomUserDetailsContextMapperFunctionalSpec > login with a user present in the database 0% 🟢
CustomUserDetailsContextMapperFunctionalSpec > secured urls are not visible without auth 0% 🟢

CI / Spring Security Tests (Java 25, shard 1) > :grails-test-examples-spring-security-ldap-retrieve-db-roles:integrationTest

Test Runs Flakiness
RetrieveDbRolesFunctionalSpec > login with a user NOT in the database 0% 🟢
RetrieveDbRolesFunctionalSpec > login with a user present in the database 0% 🟢
RetrieveDbRolesFunctionalSpec > secured urls are not visible without auth 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 0) > :grails-cache:test

Test Runs Flakiness
CacheTagLibSpec 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 0) > :grails-data-graphql:test

Test Runs Flakiness
GraphqlControllerSpec 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 0) > :grails-spring-security:test

Test Runs Flakiness
AjaxAwareAccessDeniedHandlerSpec 0% 🟢
AjaxAwareAuthenticationEntryPointSpec 0% 🟢
AjaxAwareAuthenticationFailureHandlerSpec 0% 🟢
AjaxAwareAuthenticationSuccessHandlerSpec 0% 🟢
AnnotationFilterInvocationDefinitionSpec 0% 🟢
AuthenticatedVetoableDecisionManagerSpec 0% 🟢
ChannelFilterInvocationSecurityMetadataSourceFactoryBeanSpec 0% 🟢
FilterSecurityInterceptorSpec 0% 🟢
HttpMethodOverrideDetectorSpec 0% 🟢
InterceptUrlMapFilterInvocationDefinitionSpec 0% 🟢
IpAddressFilterSpec 0% 🟢
LogoutControllerSpec 0% 🟢
MutableLogoutFilterSpec 0% 🟢
ReflectionUtilsSpec 0% 🟢
RequestmapFilterInvocationDefinitionSpec 0% 🟢
SecurityEventListenerSpec 0% 🟢
SecurityRequestHolderFilterSpec 0% 🟢
SecurityRequestHolderSpec 0% 🟢
SecurityTagLibUnitSpec 0% 🟢
SpringSecurityServiceSpec 0% 🟢
SpringSecurityUtilsSpec 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-data-hibernate5-dbmigration:integrationTest

Test Runs Flakiness
AutoRunWithMultipleDataSourceSpec > runs app with a multiple datasource 0% 🟢
AutoRunWithSingleDataSourceSpec > runs app with a single datasource 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-data-hibernate5-dbmigration:integrationTestCli

Test Runs Flakiness
DbUpdateCommandSpec > test the transaction behaviour in the changeSet with grailsChange and GORM 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-gsp:test (first 40 of 50)

Test Runs Flakiness
AliasedTagPropertySpec 0% 🟢
ApplicationTagLibResourcesTests 0% 🟢
ApplicationTagLibTests 0% 🟢
ApplyCodecTagSpec 0% 🟢
CompiledTagCallRewriterSpec 0% 🟢
CompiledTagInvocationSpec 0% 🟢
ControllerCompileStaticTagLibSpec 0% 🟢
ControllerTagLibMethodDispatchSpec 0% 🟢
ControllerTagLibMethodInheritanceSpec 0% 🟢
CountryTagLibTests 0% 🟢
FormTagLibResourceTests 0% 🟢
FormTagLibTests 0% 🟢
FormTagLibWithConfigSpec 0% 🟢
FormatTagLibSpec 0% 🟢
GroovyPageLineNumberTests 0% 🟢
GroovyPageRenderingTests 0% 🟢
GroovyPageWithJSPTagsTests 0% 🟢
InvokeTagLibWithBodyAsMethodTests 0% 🟢
InvokeTagWithCustomBodyClosureSpec 0% 🟢
LayoutWriterStackTests 0% 🟢
LinkRenderingTagLib2Tests 0% 🟢
LinkRenderingTagLibTests 0% 🟢
LocaleSelectAvailableSpec 0% 🟢
LocaleSelectConfiguredDefaultSpec 0% 🟢
LocaleSelectPinnedVariantSpec 0% 🟢
LocaleSelectRenderingSpec 0% 🟢
MethodDefinedTagLibSpec 0% 🟢
MethodVsClosureTagInvocationBenchmarkSpec 0% 🟢
ModifyOurScopeWithBodyTagTests 0% 🟢
NamedTagBodyParamsTests 0% 🟢
NamespaceInferenceTagLibSpec 0% 🟢
NamespacedNamedUrlMappingTests 0% 🟢
NamespacedTagLibMethodTests 0% 🟢
NamespacedTagLibRenderMethodTests 0% 🟢
OptionalTagBodySpec 0% 🟢
OverlappingReverseMappedLinkTests 0% 🟢
PageScopeSpec 0% 🟢
PageScopeTagTests 0% 🟢
RenderTagLibTests 0% 🟢
RestfulReverseUrlRenderingTests 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-spring-security-ui:test

Test Runs Flakiness
RegisterControllerSpec 0% 🟢
SecurityUiTagLibSpec 0% 🟢
UserControllerSpec 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-app4:integrationTest

Test Runs Flakiness
WildcardActionValidationFunctionalSpec > falls through invalid wildcard action mappings to the next match 0% 🟢
WildcardActionValidationFunctionalSpec > prefers explicit method mappings over wildcard optional action matches 0% 🟢
WildcardActionValidationFunctionalSpec > prefers literal path mappings over wildcard controller matches 0% 🟢
WildcardActionValidationFunctionalSpec > resolves wildcard action mappings to declared controller actions 0% 🟢
WildcardActionValidationFunctionalSpec > validates wildcard controller tokens against registered controllers 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-app5:integrationTest

Test Runs Flakiness
WildcardValidationDisabledSpec > grails.urlmapping.validateWildcards false keeps the fallback mapping selected ahead of a valid wildcard controller match 0% 🟢
WildcardValidationDisabledSpec > the target controller itself remains available through the standard controller route 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-datasources:integrationTest

Test Runs Flakiness
CrossDatasourceTransactionSpec > REQUIRES_NEW creates independent transaction 0% 🟢
CrossDatasourceTransactionSpec > chained transaction manager coordinates transactions across datasources 0% 🟢
CrossDatasourceTransactionSpec > count operations are datasource-specific 0% 🟢
CrossDatasourceTransactionSpec > detached objects can be reattached in different transactions 0% 🟢
CrossDatasourceTransactionSpec > error in primary datasource does not affect already-committed secondary 0% 🟢
CrossDatasourceTransactionSpec > error in secondary datasource can be caught without affecting primary 0% 🟢
CrossDatasourceTransactionSpec > flush mode can be controlled within session 0% 🟢
CrossDatasourceTransactionSpec > nested transactions work correctly 0% 🟢
CrossDatasourceTransactionSpec > operations on both datasources within single test method 0% 🟢
CrossDatasourceTransactionSpec > read-only transactions work correctly 0% 🟢
CrossDatasourceTransactionSpec > refresh reloads from database 0% 🟢
CrossDatasourceTransactionSpec > withNewSession creates new Hibernate session 0% 🟢
DatasourceSwitchingSpec > CRUD operations work independently on each datasource 0% 🟢
DatasourceSwitchingSpec > batch insert works on each datasource 0% 🟢
DatasourceSwitchingSpec > bulk delete works on each datasource 0% 🟢
DatasourceSwitchingSpec > count operations work correctly on each datasource 0% 🟢
DatasourceSwitchingSpec > createCriteria routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > data in primary datasource is isolated from secondary 0% 🟢
DatasourceSwitchingSpec > datasources are properly configured and distinct 0% 🟢
DatasourceSwitchingSpec > datasources use correct connection URLs 0% 🟢
DatasourceSwitchingSpec > dynamic finders work on each datasource independently 0% 🟢
DatasourceSwitchingSpec > executeQuery routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > executeUpdate routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > findAll with criteria works on each datasource 0% 🟢
DatasourceSwitchingSpec > rollback in one datasource does not affect other 0% 🟢
DatasourceSwitchingSpec > same entity name in different packages uses different datasources 0% 🟢
DatasourceSwitchingSpec > secondary namespace API provides access to secondary datasource 0% 🟢
DatasourceSwitchingSpec > transactions are independent between datasources 0% 🟢
DatasourceSwitchingSpec > where queries work on each datasource 0% 🟢
DatasourceSwitchingSpec > withCriteria routes to secondary datasource 0% 🟢
MultipleDataSourcesSpec > Test multiple data source persistence 0% 🟢
OsivGspRenderingSpec > OSIV keeps secondary datasource session open during GSP view rendering 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-external-configuration:integrationTest (first 40 of 49)

Test Runs Flakiness
ConfigurationPrioritySpec > TEST_HOME environment variable from build.gradle is accessible 0% 🟢
ConfigurationPrioritySpec > active profiles affect configuration 0% 🟢
ConfigurationPrioritySpec > application.yml configuration is loaded 0% 🟢
ConfigurationPrioritySpec > can list all property source names 0% 🟢
ConfigurationPrioritySpec > deeply nested properties are accessible 0% 🟢
ConfigurationPrioritySpec > default values work when property not found 0% 🟢
ConfigurationPrioritySpec > environment variables are accessible 0% 🟢
ConfigurationPrioritySpec > environment variables source exists 0% 🟢
ConfigurationPrioritySpec > grails config locations property is recognized 0% 🟢
ConfigurationPrioritySpec > grails profile is set 0% 🟢
ConfigurationPrioritySpec > multiple property sources are registered 0% 🟢
ConfigurationPrioritySpec > nested property with map value 0% 🟢
ConfigurationPrioritySpec > placeholders in configuration are resolved 0% 🟢
ConfigurationPrioritySpec > property resolver uses correct precedence 0% 🟢
ConfigurationPrioritySpec > property sources have defined order 0% 🟢
ConfigurationPrioritySpec > required property throws exception when missing 0% 🟢
ConfigurationPrioritySpec > string to boolean conversion works 0% 🟢
ConfigurationPrioritySpec > string to integer conversion works 0% 🟢
ConfigurationPrioritySpec > string to list conversion works for MIME types 0% 🟢
ConfigurationPrioritySpec > system properties are accessible 0% 🟢
ConfigurationPrioritySpec > system properties source exists 0% 🟢
ConfigurationPrioritySpec > system property java.home is accessible 0% 🟢
EnvironmentConfigurationSpec > Environment object provides utility methods 0% 🟢
EnvironmentConfigurationSpec > GSP encoding configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > Hibernate cache configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > MIME types are configured correctly 0% 🟢
EnvironmentConfigurationSpec > application.yml configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > can access configuration as flat properties 0% 🟢
EnvironmentConfigurationSpec > can access nested configuration properties 0% 🟢
EnvironmentConfigurationSpec > can check if running in specific environment 0% 🟢
EnvironmentConfigurationSpec > configuration is immutable at runtime by default 0% 🟢
EnvironmentConfigurationSpec > configuration supports default values 0% 🟢
EnvironmentConfigurationSpec > configuration supports type conversion 0% 🟢
EnvironmentConfigurationSpec > current environment is TEST 0% 🟢
EnvironmentConfigurationSpec > environment-specific datasource configuration is loaded 0% 🟢
EnvironmentConfigurationSpec > grails application reports test environment 0% 🟢
EnvironmentConfigurationSpec > grails profile is correctly set 0% 🟢
EnvironmentConfigurationSpec > info properties contain app metadata 0% 🟢
EnvironmentConfigurationSpec > spring environment contains test profile 0% 🟢
EnvironmentConfigurationSpec > test environment uses test database URL 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-geb-context-path:integrationTest

Test Runs Flakiness
ContextPathSpec > should navigate to a controller under the configured context path 0% 🟢
ContextPathSpec > should navigate to the home page under the configured context path 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-graphql-grails-docs-app:integrationTest

Test Runs Flakiness
AuthorIntegrationSpec > test creating an author 0% 🟢
SpeakerIntegrationSpec > test creating a speaker 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-graphql-grails-tenant-app:integrationTest

Test Runs Flakiness
UserIntegrationSpec > test creating a user without a company 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-graphql-grails-test-app:integrationTest

Test Runs Flakiness
ArguedFieldIntegrationSpec > test a custom argument 0% 🟢
ArguedFieldIntegrationSpec > test a simple argument 0% 🟢
ArguedFieldIntegrationSpec > test a simple argument list 0% 🟢
ArtistIntegrationSpec > test listing artists and paintings 0% 🟢
AuthorIntegrationSpec 0% 🟢
AuthorIntegrationSpec > test creating an author with multiple books 0% 🟢
BookIntegrationSpec > test books cannot be queried directly 0% 🟢
CommentIntegrationSpec > test creating the first comment 0% 🟢
GrailsTeamMemberIntegrationSpec > test retrieving a page of results 0% 🟢
GrailsTeamMemberIntegrationSpec > test retrieving the next page of results 0% 🟢
InheritanceIntegrationSpec > test the ... on directive works 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers too long byte 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers too long int 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers too long long 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers too long short 0% 🟢
NumberLengthIntegrationSpec > test creating with numbers valid 0% 🟢
PaymentIntegrationSpec > test payments can not be created because the class is abstract 0% 🟢
PostIntegrationSpec 0% 🟢
PostIntegrationSpec > test creating a post without tags 0% 🟢
RestrictedIntegrationSpec > test creating a restricted 0% 🟢
SimpleCompositeIntegrationSpec > test creating an entity with a simple composite id 0% 🟢
SoftDeleteIntegrationSpec > test delete 0% 🟢
SoftDeleteIntegrationSpec > test we can get the instance in a list query 0% 🟢
SoftDeleteIntegrationSpec > test we can query the instance 0% 🟢
SoftDeleteIntegrationSpec > test we cant get the instance in a list query 0% 🟢
SoftDeleteIntegrationSpec > test we cant query the instance 0% 🟢
TagIntegrationSpec 0% 🟢
TagIntegrationSpec > test a custom property can reference a domain 0% 🟢
TagIntegrationSpec > test a custom property can reference a domain with using joins 0% 🟢
TagIntegrationSpec > test getting the count 0% 🟢
TagIntegrationSpec > test optimistic locking 0% 🟢
TypeTestIntegrationSpec > test create 0% 🟢
TypeTestIntegrationSpec > test create with variables 0% 🟢
UserIntegrationSpec > test creating a user without a profile 0% 🟢
UserRoleIntegrationSpec > test creating an entity with a complex composite id 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-gsp-layout:integrationTest

Test Runs Flakiness
EndToEndSpec > multiline title 0% 🟢
EndToEndSpec > multiple levels of layouts 0% 🟢
EndToEndSpec > parameters 0% 🟢
EndToEndSpec > parameters with logic 0% 🟢
EndToEndSpec > simple layout 0% 🟢
EndToEndSpec > title in subtemplate 0% 🟢
GrailsLayoutSpec > 404 Error 0% 🟢
GrailsLayoutSpec > Controller 500 Example 0% 🟢
GrailsLayoutSpec > View 500 Example 0% 🟢
GrailsLayoutSpec > decorator chaining 0% 🟢
GrailsLayoutSpec > forced layout 0% 🟢
GrailsLayoutSpec > jsp demo 0% 🟢
GrailsLayoutSpec > text 0% 🟢
GspTagLibSpec > encodeAsHTML prevents XSS 0% 🟢
GspTagLibSpec > encodeAsURL encodes URL parameters 0% 🟢
GspTagLibSpec > g:checkBox renders checkbox input 0% 🟢
GspTagLibSpec > g:createLink generates URLs 0% 🟢
GspTagLibSpec > g:each provides status variable 0% 🟢
GspTagLibSpec > g:each tag iterates over collection 0% 🟢
GspTagLibSpec > g:else tag hidden when g:if is true 0% 🟢
GspTagLibSpec > g:else tag shows when g:if is false 0% 🟢
GspTagLibSpec > g:form renders form with correct attributes 0% 🟢
GspTagLibSpec > g:formatBoolean formats boolean correctly 0% 🟢
GspTagLibSpec > g:formatDate formats date correctly 0% 🟢
GspTagLibSpec > g:formatNumber formats number correctly 0% 🟢
GspTagLibSpec > g:if tag hides content when condition false 0% 🟢
GspTagLibSpec > g:if tag shows content when condition true 0% 🟢
GspTagLibSpec > g:join joins collection with delimiter 0% 🟢
GspTagLibSpec > g:link generates correct links 0% 🟢
GspTagLibSpec > g:passwordField renders password input 0% 🟢
GspTagLibSpec > g:render includes template 0% 🟢
GspTagLibSpec > g:set creates local variable 0% 🟢
GspTagLibSpec > g:set evaluates expressions 0% 🟢
GspTagLibSpec > g:set works with collections 0% 🟢
GspTagLibSpec > g:submitButton renders submit button 0% 🟢
GspTagLibSpec > g:textArea renders textarea 0% 🟢
GspTagLibSpec > g:textField renders input with value 0% 🟢
GspTagLibSpec > spread operator with g:join works 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-gsp-layout:test

Test Runs Flakiness
ApplicationTagLibSpec 0% 🟢
FlashMessagesTagLibSpec 0% 🟢
ValidationTagLibSpec 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-gsp-sitemesh3:integrationTest

Test Runs Flakiness
EndToEndSpec > apply layout to a template 0% 🟢
EndToEndSpec > apply layout to a template that is a full document 0% 🟢
EndToEndSpec > apply layout to content fetched from a url 0% 🟢
EndToEndSpec > apply layout to the output of another controller action 0% 🟢
EndToEndSpec > async multiple levels of layouts 1% 🟡
EndToEndSpec > async simple layout 0% 🟢
EndToEndSpec > model is available to the layout being applied 0% 🟢
EndToEndSpec > multiline title 0% 🟢
EndToEndSpec > multiple levels of layouts 0% 🟢
EndToEndSpec > parameters 0% 🟢
EndToEndSpec > parameters with logic 0% 🟢
EndToEndSpec > parse attribute forces a SiteMesh parse of the tag body 0% 🟢
EndToEndSpec > simple layout 0% 🟢
EndToEndSpec > title in subtemplate 0% 🟢
GrailsLayoutSpec > 404 Error 0% 🟢
GrailsLayoutSpec > Controller 500 Example 0% 🟢
GrailsLayoutSpec > View 500 Example 0% 🟢
GrailsLayoutSpec > decorator chaining 0% 🟢
GrailsLayoutSpec > forced layout 0% 🟢
GrailsLayoutSpec > jsp demo 0% 🟢
GrailsLayoutSpec > text 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-hibernate7-datasources:integrationTest

Test Runs Flakiness
CrossDatasourceTransactionSpec > REQUIRES_NEW creates independent transaction 0% 🟢
CrossDatasourceTransactionSpec > chained transaction manager coordinates transactions across datasources 0% 🟢
CrossDatasourceTransactionSpec > count operations are datasource-specific 0% 🟢
CrossDatasourceTransactionSpec > detached objects can be reattached in different transactions 0% 🟢
CrossDatasourceTransactionSpec > error in primary datasource does not affect already-committed secondary 0% 🟢
CrossDatasourceTransactionSpec > error in secondary datasource can be caught without affecting primary 0% 🟢
CrossDatasourceTransactionSpec > flush mode can be controlled within session 0% 🟢
CrossDatasourceTransactionSpec > nested transactions work correctly 0% 🟢
CrossDatasourceTransactionSpec > operations on both datasources within single test method 0% 🟢
CrossDatasourceTransactionSpec > read-only transactions work correctly 0% 🟢
CrossDatasourceTransactionSpec > refresh reloads from database 0% 🟢
CrossDatasourceTransactionSpec > withNewSession creates new Hibernate session 0% 🟢
DatasourceSwitchingSpec > CRUD operations work independently on each datasource 0% 🟢
DatasourceSwitchingSpec > batch insert works on each datasource 0% 🟢
DatasourceSwitchingSpec > bulk delete works on each datasource 0% 🟢
DatasourceSwitchingSpec > count operations work correctly on each datasource 0% 🟢
DatasourceSwitchingSpec > createCriteria routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > data in primary datasource is isolated from secondary 0% 🟢
DatasourceSwitchingSpec > datasources are properly configured and distinct 0% 🟢
DatasourceSwitchingSpec > datasources use correct connection URLs 0% 🟢
DatasourceSwitchingSpec > dynamic finders work on each datasource independently 0% 🟢
DatasourceSwitchingSpec > executeQuery routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > executeUpdate routes to secondary datasource 0% 🟢
DatasourceSwitchingSpec > findAll with criteria works on each datasource 0% 🟢
DatasourceSwitchingSpec > rollback in one datasource does not affect other 0% 🟢
DatasourceSwitchingSpec > same entity name in different packages uses different datasources 0% 🟢
DatasourceSwitchingSpec > secondary namespace API provides access to secondary datasource 0% 🟢
DatasourceSwitchingSpec > transactions are independent between datasources 0% 🟢
DatasourceSwitchingSpec > where queries work on each datasource 0% 🟢
DatasourceSwitchingSpec > withCriteria routes to secondary datasource 0% 🟢
MultipleDataSourcesSpec > Test multiple data source persistence 0% 🟢
OsivGspRenderingSpec > OSIV keeps secondary datasource session open during GSP view rendering 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-hibernate7-grails-schema-per-tenant:integrationTest

Test Runs Flakiness
SchemaPerTenantIntegrationSpec > Test database per tenant 0% 🟢
SchemaPerTenantIntegrationSpec > test saveBook with data service 0% 🟢
SchemaPerTenantIntegrationSpec > test saveBook with normal service 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-hibernate7-issue-698-domain-save-npe:integrationTest

Test Runs Flakiness
BookSpecSpec > It works well if there is a validate error: maxSize 0% 🟢
BookSpecSpec > It works well if there is a validate error: nullable 0% 🟢
BookSpecSpec > It works well if there is no validate error in both Java 7 and 8 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-hibernate7-issue450:integrationTest

Test Runs Flakiness
BookControllerSpec > test books can be fetched 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 1) > :grails-test-examples-hibernate7-scaffolding-fields:integrationTest (first 40 of 105)

Test Runs Flakiness
CrudFunctionalSpec > Can navigate from list to create to list 0% 🟢
CrudFunctionalSpec > Can navigate from list to show to edit to show 0% 🟢
CrudFunctionalSpec > Create department with valid data succeeds 0% 🟢
CrudFunctionalSpec > Create employee with valid data succeeds 0% 🟢
CrudFunctionalSpec > Create page displays correctly 0% 🟢
CrudFunctionalSpec > Delete removes employee from list 0% 🟢
CrudFunctionalSpec > Department list page displays correctly 0% 🟢
CrudFunctionalSpec > Edit employee with valid data succeeds 0% 🟢
CrudFunctionalSpec > Edit page displays correctly with existing data 0% 🟢
CrudFunctionalSpec > Employee list page displays correctly 0% 🟢
CrudFunctionalSpec > List page shows create new button 0% 🟢
CrudFunctionalSpec > Project list page displays correctly 0% 🟢
CrudFunctionalSpec > Show page displays employee details 0% 🟢
CrudFunctionalSpec > Show page has edit and delete buttons 0% 🟢
CustomTemplatesSpec > custom biography wrapper template is used on create page 0% 🟢
FieldTypesSpec > Association select contains existing options 0% 🟢
FieldTypesSpec > BelongsTo association renders as select dropdown 0% 🟢
FieldTypesSpec > BigDecimal property renders as number input 0% 🟢
FieldTypesSpec > Boolean property renders as checkbox 0% 🟢
FieldTypesSpec > Byte array property renders as file input 0% 🟢
FieldTypesSpec > Currency property renders as select 0% 🟢
FieldTypesSpec > Date property renders as date input or text 0% 🟢
FieldTypesSpec > Embedded object properties are rendered inline 0% 🟢
FieldTypesSpec > Enum property renders as select dropdown 0% 🟢
FieldTypesSpec > Enum select contains all enum values 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field active is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field email is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field firstName is present on create form 0% 🟢
FieldTypesSpec > Field #fieldName is present on create form > Field lastName is present on create form 0% 🟢
FieldTypesSpec > Fields have associated labels 0% 🟢
FieldTypesSpec > HasMany association renders as multi-select or list 0% 🟢
FieldTypesSpec > Integer property renders as number input 0% 🟢
FieldTypesSpec > Locale property renders as select 0% 🟢
FieldTypesSpec > Property with inList constraint renders as select 0% 🟢
FieldTypesSpec > Required fields have visual indicator 0% 🟢
FieldTypesSpec > String property renders as text input 0% 🟢
FieldTypesSpec > String property with email constraint renders as email input 0% 🟢
FieldTypesSpec > String property with widget:textarea renders as textarea 0% 🟢
FieldTypesSpec > TimeZone property renders as select 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 2) > :grails-data-hibernate7-dbmigration:integrationTest

Test Runs Flakiness
AutoRunWithMultipleDataSourceSpec > runs app with a multiple datasource 0% 🟢
AutoRunWithSingleDataSourceSpec > runs app with a single datasource 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 2) > :grails-mail:test

Test Runs Flakiness
PlainTextMailTagLibSpec 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 2) > :grails-spring-security-rest:test

Test Runs Flakiness
DefaultRestAuthenticationTokenJsonRendererSpec 0% 🟢
RestOauthControllerSpec 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 2) > :grails-test-examples-app2:integrationTest

Test Runs Flakiness
ErrorsControllerSpec > Test a global 500 mapping that maps to another controller 0% 🟢
GrailsUtilStackFiltererIntegrationSpec > GrailsUtil.deepSanitize uses the StackTraceFilterer configured via grails.logging.stackTraceFiltererClass 0% 🟢
NotFoundHandlerSpec > Test that a 404 handler renders the view correctly when a forward is executed 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 2) > :grails-test-examples-app3:integrationTest

Test Runs Flakiness
LoadAfterSpec > Test override one plugin view from another plugin 0% 🟢
PluginBeansBeforeAutoConfigurationSpec > a plugin beanRegistrar bean wins over the app's @ConditionalOnMissingBean default 0% 🟢
PluginBeansBeforeAutoConfigurationSpec > a plugin doWithSpring bean wins over the app's @ConditionalOnMissingBean default 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 2) > :grails-test-examples-async-events-pubsub-demo:integrationTest

Test Runs Flakiness
AsyncEventsSpec > book events are received after save 0% 🟢
AsyncEventsSpec > event listener receives correct book title 0% 🟢
AsyncEventsSpec > humor prefix is added by event listener 0% 🟢
AsyncEventsSpec > insert events contain book entity 0% 🟢
AsyncEventsSpec > multiple books can be saved in sequence 0% 🟢
AsyncEventsSpec > multiple sum events accumulate correctly 0% 🟢
AsyncEventsSpec > politics book throws exception 0% 🟢
AsyncEventsSpec > subscriber can track multiple book saves 0% 🟢
AsyncEventsSpec > sum service handles negative values 0% 🟢
AsyncEventsSpec > sum service handles zero values 0% 🟢
AsyncEventsSpec > total service accumulation handles rapid events 0% 🟢
PubSubSpec > Test event bus within Grails 0% 🟢
PubSubSpec > Test event from data service 0% 🟢
PubSubSpec > Test event from data service with rollback 0% 🟢
PubSubSpec > Test modify property event listener 0% 🟢
PubSubSpec > Test synchronous event listener 0% 🟢
TaskControllerSpec > test async error handling 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 2) > :grails-test-examples-cache:integrationTest

Test Runs Flakiness
AdvancedCachingIntegrationSpec > custom key caching works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > different categories have separate list cache entries via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction by custom key works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction clears list cache via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction clears map cache via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > eviction of all custom key cache works via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > exception is thrown and not cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > list data is cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > map data is cached via HTTP 0% 🟢
AdvancedCachingIntegrationSpec > successful calls are cached even after exceptions via HTTP 0% 🟢
CacheTagIntegrationSpec > test block tag 0% 🟢
CacheTagIntegrationSpec > test clear blocks cache 0% 🟢
CacheTagIntegrationSpec > test clear cache 0% 🟢
CacheTagIntegrationSpec > test expire blocks cache based on ttl 0% 🟢
CacheTagIntegrationSpec > test expire render cache based on ttl 0% 🟢
CacheTagIntegrationSpec > test render tag 0% 🟢
CachingServiceIntegrationSpec > test basic cache clear service 0% 🟢
CachingServiceIntegrationSpec > test basic cache evict all service 0% 🟢
CachingServiceIntegrationSpec > test basic cache evict key service 0% 🟢
CachingServiceIntegrationSpec > test basic cache put service 0% 🟢
CachingServiceIntegrationSpec > test basic caching service 0% 🟢
CachingServiceIntegrationSpec > test caching service with method params 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches > Verify max capacities set for configured caches [cacheName: bar, expectedCapacity: 200, #1] 0% 🟢
MaxCapacityCacheSpec > Verify max capacities set for configured caches > Verify max capacities set for configured caches [cacheName: foo, expectedCapacity: 100, #0] 0% 🟢
NotCachingControllerIntegrationSpec > test action controller with different parameters 0% 🟢

Groovy Snapshot Canary Build / Build Grails (shard 2) > :grails-test-examples-config-report:integrationTest

Test Runs Flakiness
ConfigReportCommandIntegrationSpec > ConfigReportCommand generates a report file with hybrid format 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties bound via @ConfigurationProperties in Other Properties 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties from all three config sources 0% 🟢
ConfigReportCommandIntegrationSpec > report contains properties from application.groovy in Other Properties 0% 🟢
ConfigReportCommandIntegrationSpec > report escapes pipe characters from application.groovy values 0% 🟢
ConfigReportCommandIntegrationSpec > report puts custom application properties in Other Properties section 0% 🟢
ConfigReportCommandIntegrationSpec > report separates known metadata properties from custom properties 0% 🟢
ConfigReportCommandIntegrationSpec > report shows known Grails properties in metadata categories 0% 🟢

SiteMesh 2 Compatibility / SiteMesh 2 Core Tests (Java 21) > :grails-cache:test

Test Runs Flakiness
CacheTagLibSpec 0% 🟢

SiteMesh 2 Compatibility / SiteMesh 2 Core Tests (Java 21) > :grails-data-graphql:test

Test Runs Flakiness
GraphqlControllerSpec 0% 🟢

SiteMesh 2 Compatibility / SiteMesh 2 Core Tests (Java 21) > :grails-gsp:test (first 40 of 50)

Test Runs Flakiness
AliasedTagPropertySpec 0% 🟢
ApplicationTagLibResourcesTests 0% 🟢
ApplicationTagLibTests 0% 🟢
ApplyCodecTagSpec 0% 🟢
CompiledTagCallRewriterSpec 0% 🟢
CompiledTagInvocationSpec 0% 🟢
ControllerCompileStaticTagLibSpec 0% 🟢
ControllerTagLibMethodDispatchSpec 0% 🟢
ControllerTagLibMethodInheritanceSpec 0% 🟢
CountryTagLibTests 0% 🟢
FormTagLibResourceTests 0% 🟢
FormTagLibTests 0% 🟢
FormTagLibWithConfigSpec 0% 🟢
FormatTagLibSpec 0% 🟢
GroovyPageLineNumberTests 0% 🟢
GroovyPageRenderingTests 0% 🟢
GroovyPageWithJSPTagsTests 0% 🟢
InvokeTagLibWithBodyAsMethodTests 0% 🟢
InvokeTagWithCustomBodyClosureSpec 0% 🟢
LayoutWriterStackTests 0% 🟢
LinkRenderingTagLib2Tests 0% 🟢
LinkRenderingTagLibTests 0% 🟢
LocaleSelectAvailableSpec 0% 🟢
LocaleSelectConfiguredDefaultSpec 0% 🟢
LocaleSelectPinnedVariantSpec 0% 🟢
LocaleSelectRenderingSpec 0% 🟢
MethodDefinedTagLibSpec 0% 🟢
MethodVsClosureTagInvocationBenchmarkSpec 0% 🟢
ModifyOurScopeWithBodyTagTests 0% 🟢
NamedTagBodyParamsTests 0% 🟢
NamespaceInferenceTagLibSpec 0% 🟢
NamespacedNamedUrlMappingTests 0% 🟢
NamespacedTagLibMethodTests 0% 🟢
NamespacedTagLibRenderMethodTests 0% 🟢
OptionalTagBodySpec 0% 🟢
OverlappingReverseMappedLinkTests 0% 🟢
PageScopeSpec 0% 🟢
PageScopeTagTests 0% 🟢
RenderTagLibTests 0% 🟢
RestfulReverseUrlRenderingTests 0% 🟢

SiteMesh 2 Compatibility / SiteMesh 2 Core Tests (Java 21) > :grails-mail:test

Test Runs Flakiness
PlainTextMailTagLibSpec 0% 🟢

SiteMesh 2 Compatibility / SiteMesh 2 Functional Tests (Java 21, indy=false) > :grails-test-examples-gsp-layout:test

Test Runs Flakiness
ApplicationTagLibSpec 0% 🟢
FlashMessagesTagLibSpec 0% 🟢
ValidationTagLibSpec 0% 🟢

🏷️ Commit: 82fe9d8
▶️ Tests: 42158 executed
🟡 Checks: 52/85 completed

Test Failures (first 10 of 3270)

AjaxAwareAccessDeniedHandlerSpec (:grails-spring-security:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
AjaxAwareAuthenticationEntryPointSpec (:grails-spring-security:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
AjaxAwareAuthenticationFailureHandlerSpec (:grails-spring-security:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
AjaxAwareAuthenticationSuccessHandlerSpec (:grails-spring-security:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
AnnotationFilterInvocationDefinitionSpec (:grails-spring-security:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
AuthenticatedVetoableDecisionManagerSpec (:grails-spring-security:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
CacheTagLibSpec (:grails-cache:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
ChannelFilterInvocationSecurityMetadataSourceFactoryBeanSpec (:grails-spring-security:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
FilterSecurityInterceptorSpec (:grails-spring-security:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more
GraphqlControllerSpec (:grails-data-graphql:test in Groovy Snapshot Canary Build / Build Grails (shard 0))
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'namedJsonConfigurationRegistry': Instantiation of supplied bean failed
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1250)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1187)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:565)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:525)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:333)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:331)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1225)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1191)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1121)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:120)
	at org.grails.testing.GrailsUnitTest$Trait$Helper.defineBeans(GrailsUnitTest.groovy:145)
	at org.grails.testing.spock.WebSetupSpecInterceptor.setup(WebSetupSpecInterceptor.groovy:76)
	at org.grails.testing.spock.WebSetupSpecInterceptor.intercept(WebSetupSpecInterceptor.groovy:66)
	at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:139)
	at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:157)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'tools.jackson.databind.json.JsonMapper' available
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:386)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:377)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$SupplierContextAdapter.bean(BeanRegistryAdapter.java:308)
	at org.grails.plugins.converters.ConvertersGrailsPlugin$_beanRegistrar_closure1.closure3$_closure7(ConvertersGrailsPlugin.groovy:75)
	at org.springframework.beans.factory.support.BeanRegistryAdapter$BeanSpecAdapter.lambda$supplier$0(BeanRegistryAdapter.java:292)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainInstanceFromSupplier(AbstractAutowireCapableBeanFactory.java:1283)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.obtainInstanceFromSupplier(DefaultListableBeanFactory.java:1026)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1244)
	... 17 more

Rerun Controls (first 20 of 3270)

Note

Checks are currently running using the configuration below.

Select tests to mute in this pull request:

🔲 AbstractParentSpec > Test that persisting a domain class with an abstract parent works
🔲 AclServiceSpec > children are cleared from cache when parent is updated
🔲 AclServiceSpec > children are cleared from cache when parent is updated2
🔲 AclServiceSpec > create Acl for a duplicate domain object
🔲 AclServiceSpec > create Acl rejects null parameter
🔲 AclServiceSpec > cumulative permissions
🔲 AclServiceSpec > delete Acl also deletes children
🔲 AclServiceSpec > delete Acl rejects null parameters
🔲 AclServiceSpec > delete Acl removes rows from database
🔲 AclServiceSpec > test lifecycle
🔲 AclUtilServiceSpec > cumulative permission
🔲 AclUtilServiceSpec > delete permission
🔲 AclUtilServiceSpec > foo
🔲 AclUtilServiceSpec > has permission
🔲 AclUtilServiceSpec > permissions let you do things
🔲 ActuatorEnvClosureSpec > actuator /env endpoint response contains normal string properties from application.groovy
🔲 ActuatorEnvClosureSpec > actuator /env endpoint returns 200 when application.groovy contains closure-valued config
🔲 ActuatorEnvClosureSpec > actuator /health endpoint returns 200
🔲 AdditionalLogoutFiltersConfiguredSpec > additional handlers exist
🔲 AdditionalLogoutFiltersConfiguredSpec > invoke

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/docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant