testlens-app[bot] commented on PR #15409: URL: https://github.com/apache/grails-core/pull/15409#issuecomment-4104359166
## 🚨 TestLens detected 122 failed tests 🚨 Here is what you can do: 1) Inspect the test failures carefully. 2) If you are convinced that some of the tests are flaky, you can mute them below. 3) Finally, trigger a rerun by checking the rerun checkbox. ### Test Summary | Check | Project/Task | Test | Runs | |---|---|---|---| | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test \@BindUsing annotation lowercases and trims email | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test \@BindUsing with mixed case email | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test \@BindingFormat for date parsing - MMddyyyy format | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test \@BindingFormat for date parsing - yyyy-MM-dd format | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test \@RequestParameter maps different parameter names | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test JSON body binding to command object | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test basic map-based binding | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test bindData with include - only specified properties bound | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test binding multiple command objects | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test binding to List collection | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test binding to List with gaps in indices | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test binding to Map collection | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test binding with null parameter values | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test binding with special characters in values | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test binding with unicode characters | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test command object binding with validation - invalid data | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test command object binding with validation - valid data | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test empty string converts to null | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test multiple date formats in same request | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test nested command object binding | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test nested object binding | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test selective property binding using subscript operator | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test string trimming during binding | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test using grailsWebDataBinder directly | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AdvancedDataBindingSpec > test valid type conversion | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncFunctionalSpec > Test async response rendering works | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > CompletableFuture composition combines results | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > async batch processing reverses all items | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > async service calculates square | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > async service processes string input | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > async task handles success without error | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > async task processes JSON request body | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > async task with timeout completes within time limit | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > async task with timeout completes within time limit > async task with timeout completes within time limit [delay: 100, timeout: 10, elapsedMin: 10, status: timeout, result: Task exceeded timeout of , \#1] | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > async task with timeout completes within time limit > async task with timeout completes within time limit [delay: 100, timeout: 500, elapsedMin: 100, status: completed, result: Completed in time, \#0] | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > asyncProcessingService.calculateAsync squares value | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > asyncProcessingService.processAsync returns correct result | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > asyncProcessingService.processBatchAsync handles empty list | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > asyncProcessingService.processBatchAsync handles single item | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > chained tasks process data through multiple stages | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > compute task returns calculated value | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > conditional async uses async mode when requested | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > conditional async uses sync mode when requested | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > long running operation completes with task info | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > multi-stage process reports all stages | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > parallel tasks complete and return all results | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > simple async task completes successfully | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AsyncPromiseSpec > stages execute in correct order | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | AtResourceSpec > A domain class annotated with \@Resources exposes an endpoint | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookFunctionalSpec > Test that a book was created in the Bootstrap class | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookFunctionalSpec > Test that switching language results in correct encodings | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookFunctionalSpec > Test that when the /viewBooks URL is hit it redirects to the book list | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookFunctionalSpec > When creating a book the params are not on the url | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookIntegrationSpec > create book and save | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookIntegrationSpec > create book and save with where | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookIntegrationSpec > create book and save with where > create book and save with where [title: The Stand, count: 2, \#0] | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookIntegrationSpec > test toUpperCase | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookIntegrationSpec > test toUpperCase > test toUpperCase [value: King Crimson, expectedResult: KING CRIMSON, \#0] | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookIntegrationSpec > test toUpperCase > test toUpperCase [value: Riverside, expectedResult: RIVERSIDE, \#1] | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookIntegrationSpec > test transaction rolled back from previous test | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | BookRestfulControllerSpec > A RestfulController exposes an index endpoint for a domain class | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | CachingSpec > cache handles many different parameter values | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | CachingSpec > cache key includes multiple parameters | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | CachingSpec > cached method returns different result after eviction | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | CachingSpec > cached method returns same result on subsequent calls | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | CachingSpec > cached method with parameter uses parameter as key | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | CachingSpec > evicting all entries clears entire cache | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | CachingSpec > evicting specific cache entry leaves others intact | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | CachingSpec > multiple eviction and fetch cycles work correctly | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ConditionalOnPropertyFromPluginYmlSpec > conditional bean messages confirm they were loaded via \@ConditionalOnProperty | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ConditionalOnPropertyFromPluginYmlSpec > conditional beans from plugin.yml properties are all present | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ConfigTestControllerSpec > Test that configuration properties are correctly read | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ControllerFromPluginSpec > test invoking a controller provided by a plugin | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ControllerIncludesSpec > Test includes that render a view work when called from a controller action | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ControllerIncludesSpec > Test includes that render a view work when called from a template | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ControllerIncludesSpec > Test includes that render a view work when called from another view | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ControllerIncludesSpec > Test includes that render text work when called from a controller action | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ControllerIncludesSpec > Test includes that render text work when called from a template | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ControllerIncludesSpec > Test includes that render text work when called from another view | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | DataBindingSpec > data binding works | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ErrorsFunctionalSpec > Test 404 mapping to controller | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ErrorsFunctionalSpec > Test 500 mappings for custom exceptions | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ErrorsFunctionalSpec > Test Interceptor.afterView\(\) has access to the exception if thrown | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ErrorsFunctionalSpec > Test default 500 mapping | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ErrorsFunctionalSpec > Test exception handling methods for internal controller exceptions | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ForwardingSpec > Test forward after populating flash | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ForwardingSpec > Test forward to named controller | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ForwardingSpec > Test forward to same controller | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ForwardingSpec > Test forward with parameters | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ForwardingSpec > Test forwarding to an action which returns a Map | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ForwardingSpec > forwarding to a view | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ForwardingSpec > params extracted from the URL path by a custom UrlMapping are forwarded | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ForwardingSpec > verifies params from the original url are passed to the forwarded action but not duplicated | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | HomeSpec > Test the home page renders correctly | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InjectingDataSourceServiceSpec > you can inject DataSource with def dataSource | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InspectConfigControllerSpec > test config properties from plugins | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorDependencyInjectionSpec > Test that interceptors are subjected to autowire by name | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorFunctionalSpec > Test that after interceptor can chain | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorFunctionalSpec > Test that after interceptor can forward | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorFunctionalSpec > Test that after interceptor can redirect | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorFunctionalSpec > Test that after interceptor can render a model and view | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorFunctionalSpec > Test that after interceptor can render text | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorFunctionalSpec > Test that an after interceptor can render text and return false to disable view rendering | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorFunctionalSpec > Test that an interceptor exception is handled correctly | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | InterceptorFunctionalSpec > Test that before interceptor can render a model and view | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | LoadAfterSpec > Test override one plugin view from another plugin | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | MiscFunctionalSpec > Test that bean override configuration works | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | MiscFunctionalSpec > Test that placeholder configuration works for the config object | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | MiscFunctionalSpec > Test that when an action returns null the view is rendered by convention | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | PluginViewsControllerSpec > Test that views from a plugin loaded after another plugin override when using loadAfter | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | PluginViewsControllerSpec > Test that when plugin templates are rendered they render correctly | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | RedirectInterceptorSpec > Test that an interceptor that redirects works | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | RedirectWithAndWithoutParamsFunctionalSpec > Params are not added to the url after a redirect even if they are passed to the redirect | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | RedirectWithAndWithoutParamsFunctionalSpec > Params are not on the url when redirecting from UrlMappings with disabling params redirect | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | RedirectWithAndWithoutParamsFunctionalSpec > Params are not on the url when redirecting from UrlMappings without enabling params redirect | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | RedirectWithAndWithoutParamsFunctionalSpec > Params are on the url when redirecting from UrlMappings enabling params redirect | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | UploadControllerSpec > Test file upload | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | UploadControllerSpec > Test file upload parameters | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | UriMatchingInterceptorFunctionalSpec > Test that an interceptor that redirects works | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ValidationFunctionalSpec > Test validation of a valid Hibernate entity | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | ValidationFunctionalSpec > Test validation of an invalid Hibernate entity | ❌ | | [CI / Functional Tests \(Java 25, indy\=false\)](https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409) | :grails-test-examples-app1:integrationTest | i18nSpec > Test i18n messages from plugins | ❌ | 🏷️ Commit: 04271cc48b8655d8ab4fddd60b412cec6342a471 ▶️ Tests: 8139 executed 🟡 Checks: 8/32 completed ### Test Failures (first 5 of 122) <details> <summary><strong>AdvancedDataBindingSpec > test @BindUsing annotation lowercases and trims email</strong> (:grails-test-examples-app1:integrationTest in <a href="https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409">CI / Functional Tests (Java 25, indy=false)</a>)</summary> ``` java.lang.IllegalStateException: ApplicationContext failure threshold (1) exceeded: skipping repeated attempt to load context for [WebMergedContextConfiguration@509cf379 testClass = functionaltests.binding.AdvancedDataBindingSpec, locations = [], classes = [functionaltests.Application], contextInitializerClasses = [], activeProfiles = [], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true", "server.port=0"], contextCustomizers = [org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@6963b88c, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7c369270, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@557b6a37, org.springframework.boot.test.web.reactor.netty.DisableReactorResourceFactoryGlobalResourcesContextCustomi zerFactory$DisableReactorResourceFactoryGlobalResourcesContextCustomizerCustomizer@583fb274, org.springframework.test.context.support.DynamicPropertiesContextCustomizer@0, org.spockframework.spring.mock.SpockContextCustomizer@0, org.springframework.boot.test.context.SpringBootTestAnnotation@9857f6f6], resourceBasePath = "src/main/webapp", contextLoader = grails.boot.test.GrailsApplicationContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:145) at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:130) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:155) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:111) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:260) at org.spockframework.spring.SpringTestContextManager.prepareTestInstance(SpringTestContextManager.java:56) at org.spockframework.spring.SpringInterceptor.interceptInitializerMethod(SpringInterceptor.java:46) at org.spockframework.runtime.extension.AbstractMethodInterceptor.intercept(AbstractMethodInterceptor.java:24) at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:101) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:156) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) ``` </details> <details> <summary><strong>AdvancedDataBindingSpec > test @BindUsing with mixed case email</strong> (:grails-test-examples-app1:integrationTest in <a href="https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409">CI / Functional Tests (Java 25, indy=false)</a>)</summary> ``` java.lang.IllegalStateException: ApplicationContext failure threshold (1) exceeded: skipping repeated attempt to load context for [WebMergedContextConfiguration@509cf379 testClass = functionaltests.binding.AdvancedDataBindingSpec, locations = [], classes = [functionaltests.Application], contextInitializerClasses = [], activeProfiles = [], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true", "server.port=0"], contextCustomizers = [org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@6963b88c, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7c369270, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@557b6a37, org.springframework.boot.test.web.reactor.netty.DisableReactorResourceFactoryGlobalResourcesContextCustomi zerFactory$DisableReactorResourceFactoryGlobalResourcesContextCustomizerCustomizer@583fb274, org.springframework.test.context.support.DynamicPropertiesContextCustomizer@0, org.spockframework.spring.mock.SpockContextCustomizer@0, org.springframework.boot.test.context.SpringBootTestAnnotation@9857f6f6], resourceBasePath = "src/main/webapp", contextLoader = grails.boot.test.GrailsApplicationContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:145) at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:130) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:155) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:111) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:260) at org.spockframework.spring.SpringTestContextManager.prepareTestInstance(SpringTestContextManager.java:56) at org.spockframework.spring.SpringInterceptor.interceptInitializerMethod(SpringInterceptor.java:46) at org.spockframework.runtime.extension.AbstractMethodInterceptor.intercept(AbstractMethodInterceptor.java:24) at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:101) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:156) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) ``` </details> <details> <summary><strong>AdvancedDataBindingSpec > test @BindingFormat for date parsing - MMddyyyy format</strong> (:grails-test-examples-app1:integrationTest in <a href="https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409">CI / Functional Tests (Java 25, indy=false)</a>)</summary> ``` java.lang.IllegalStateException: ApplicationContext failure threshold (1) exceeded: skipping repeated attempt to load context for [WebMergedContextConfiguration@509cf379 testClass = functionaltests.binding.AdvancedDataBindingSpec, locations = [], classes = [functionaltests.Application], contextInitializerClasses = [], activeProfiles = [], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true", "server.port=0"], contextCustomizers = [org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@6963b88c, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7c369270, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@557b6a37, org.springframework.boot.test.web.reactor.netty.DisableReactorResourceFactoryGlobalResourcesContextCustomi zerFactory$DisableReactorResourceFactoryGlobalResourcesContextCustomizerCustomizer@583fb274, org.springframework.test.context.support.DynamicPropertiesContextCustomizer@0, org.spockframework.spring.mock.SpockContextCustomizer@0, org.springframework.boot.test.context.SpringBootTestAnnotation@9857f6f6], resourceBasePath = "src/main/webapp", contextLoader = grails.boot.test.GrailsApplicationContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:145) at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:130) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:155) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:111) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:260) at org.spockframework.spring.SpringTestContextManager.prepareTestInstance(SpringTestContextManager.java:56) at org.spockframework.spring.SpringInterceptor.interceptInitializerMethod(SpringInterceptor.java:46) at org.spockframework.runtime.extension.AbstractMethodInterceptor.intercept(AbstractMethodInterceptor.java:24) at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:101) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:156) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) ``` </details> <details> <summary><strong>AdvancedDataBindingSpec > test @BindingFormat for date parsing - yyyy-MM-dd format</strong> (:grails-test-examples-app1:integrationTest in <a href="https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409">CI / Functional Tests (Java 25, indy=false)</a>)</summary> ``` java.lang.IllegalStateException: ApplicationContext failure threshold (1) exceeded: skipping repeated attempt to load context for [WebMergedContextConfiguration@509cf379 testClass = functionaltests.binding.AdvancedDataBindingSpec, locations = [], classes = [functionaltests.Application], contextInitializerClasses = [], activeProfiles = [], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true", "server.port=0"], contextCustomizers = [org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@6963b88c, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7c369270, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@557b6a37, org.springframework.boot.test.web.reactor.netty.DisableReactorResourceFactoryGlobalResourcesContextCustomi zerFactory$DisableReactorResourceFactoryGlobalResourcesContextCustomizerCustomizer@583fb274, org.springframework.test.context.support.DynamicPropertiesContextCustomizer@0, org.spockframework.spring.mock.SpockContextCustomizer@0, org.springframework.boot.test.context.SpringBootTestAnnotation@9857f6f6], resourceBasePath = "src/main/webapp", contextLoader = grails.boot.test.GrailsApplicationContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:145) at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:130) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:155) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:111) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:260) at org.spockframework.spring.SpringTestContextManager.prepareTestInstance(SpringTestContextManager.java:56) at org.spockframework.spring.SpringInterceptor.interceptInitializerMethod(SpringInterceptor.java:46) at org.spockframework.runtime.extension.AbstractMethodInterceptor.intercept(AbstractMethodInterceptor.java:24) at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:101) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:156) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) ``` </details> <details> <summary><strong>AdvancedDataBindingSpec > test @RequestParameter maps different parameter names</strong> (:grails-test-examples-app1:integrationTest in <a href="https://github.com/apache/grails-core/actions/runs/23388253389/job/68038678493?pr=15409">CI / Functional Tests (Java 25, indy=false)</a>)</summary> ``` java.lang.IllegalStateException: ApplicationContext failure threshold (1) exceeded: skipping repeated attempt to load context for [WebMergedContextConfiguration@509cf379 testClass = functionaltests.binding.AdvancedDataBindingSpec, locations = [], classes = [functionaltests.Application], contextInitializerClasses = [], activeProfiles = [], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true", "server.port=0"], contextCustomizers = [org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@6963b88c, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7c369270, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@557b6a37, org.springframework.boot.test.web.reactor.netty.DisableReactorResourceFactoryGlobalResourcesContextCustomi zerFactory$DisableReactorResourceFactoryGlobalResourcesContextCustomizerCustomizer@583fb274, org.springframework.test.context.support.DynamicPropertiesContextCustomizer@0, org.spockframework.spring.mock.SpockContextCustomizer@0, org.springframework.boot.test.context.SpringBootTestAnnotation@9857f6f6], resourceBasePath = "src/main/webapp", contextLoader = grails.boot.test.GrailsApplicationContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:145) at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:130) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:155) at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:111) at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:260) at org.spockframework.spring.SpringTestContextManager.prepareTestInstance(SpringTestContextManager.java:56) at org.spockframework.spring.SpringInterceptor.interceptInitializerMethod(SpringInterceptor.java:46) at org.spockframework.runtime.extension.AbstractMethodInterceptor.intercept(AbstractMethodInterceptor.java:24) at org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:101) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) at org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:156) at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) ``` </details> ### Muted Tests > [!NOTE] > Checks are currently running using the configuration below. Select tests to mute in this pull request: 🔲 AdvancedDataBindingSpec > test \@BindUsing annotation lowercases and trims email <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_2] --> 🔲 AdvancedDataBindingSpec > test \@BindUsing with mixed case email <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_3] --> 🔲 AdvancedDataBindingSpec > test \@BindingFormat for date parsing - MMddyyyy format <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_4] --> 🔲 AdvancedDataBindingSpec > test \@BindingFormat for date parsing - yyyy-MM-dd format <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_5] --> 🔲 AdvancedDataBindingSpec > test \@RequestParameter maps different parameter names <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_10] --> 🔲 AdvancedDataBindingSpec > test JSON body binding to command object <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_17] --> 🔲 AdvancedDataBindingSpec > test basic map-based binding <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_0] --> 🔲 AdvancedDataBindingSpec > test bindData with include - only specified properties bound <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_11] --> 🔲 AdvancedDataBindingSpec > test binding multiple command objects <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_18] --> 🔲 AdvancedDataBindingSpec > test binding to List collection <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_7] --> 🔲 AdvancedDataBindingSpec > test binding to List with gaps in indices <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_8] --> 🔲 AdvancedDataBindingSpec > test binding to Map collection <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_9] --> 🔲 AdvancedDataBindingSpec > test binding with null parameter values <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_24] --> 🔲 AdvancedDataBindingSpec > test binding with special characters in values <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_22] --> 🔲 AdvancedDataBindingSpec > test binding with unicode characters <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_23] --> 🔲 AdvancedDataBindingSpec > test command object binding with validation - invalid data <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_15] --> 🔲 AdvancedDataBindingSpec > test command object binding with validation - valid data <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_14] --> 🔲 AdvancedDataBindingSpec > test empty string converts to null <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_19] --> 🔲 AdvancedDataBindingSpec > test multiple date formats in same request <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_6] --> 🔲 AdvancedDataBindingSpec > test nested command object binding <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_16] --> 🔲 AdvancedDataBindingSpec > test nested object binding <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_1] --> 🔲 AdvancedDataBindingSpec > test selective property binding using subscript operator <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_12] --> 🔲 AdvancedDataBindingSpec > test string trimming during binding <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_20] --> 🔲 AdvancedDataBindingSpec > test using grailsWebDataBinder directly <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_13] --> 🔲 AdvancedDataBindingSpec > test valid type conversion <!-- uniqueId=[engine:spock]/[spec:functionaltests.binding.AdvancedDataBindingSpec]/[feature:$spock_feature_0_21] --> 🔲 AsyncFunctionalSpec > Test async response rendering works <!-- uniqueId=[engine:spock]/[spec:functionaltests.AsyncFunctionalSpec]/[feature:$spock_feature_1_0] --> 🔲 AsyncPromiseSpec > CompletableFuture composition combines results <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_10] --> 🔲 AsyncPromiseSpec > async batch processing reverses all items <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_8] --> 🔲 AsyncPromiseSpec > async service calculates square <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_7] --> 🔲 AsyncPromiseSpec > async service processes string input <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_6] --> 🔲 AsyncPromiseSpec > async task handles success without error <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_4] --> 🔲 AsyncPromiseSpec > async task processes JSON request body <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_11] --> 🔲 AsyncPromiseSpec > async task with timeout completes within time limit <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_5] --> 🔲 AsyncPromiseSpec > asyncProcessingService.calculateAsync squares value <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_17] --> 🔲 AsyncPromiseSpec > asyncProcessingService.processAsync returns correct result <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_16] --> 🔲 AsyncPromiseSpec > asyncProcessingService.processBatchAsync handles empty list <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_18] --> 🔲 AsyncPromiseSpec > asyncProcessingService.processBatchAsync handles single item <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_19] --> 🔲 AsyncPromiseSpec > chained tasks process data through multiple stages <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_3] --> 🔲 AsyncPromiseSpec > compute task returns calculated value <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_1] --> 🔲 AsyncPromiseSpec > conditional async uses async mode when requested <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_14] --> 🔲 AsyncPromiseSpec > conditional async uses sync mode when requested <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_15] --> 🔲 AsyncPromiseSpec > long running operation completes with task info <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_9] --> 🔲 AsyncPromiseSpec > multi-stage process reports all stages <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_12] --> 🔲 AsyncPromiseSpec > parallel tasks complete and return all results <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_2] --> 🔲 AsyncPromiseSpec > simple async task completes successfully <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_0] --> 🔲 AsyncPromiseSpec > stages execute in correct order <!-- uniqueId=[engine:spock]/[spec:functionaltests.async.AsyncPromiseSpec]/[feature:$spock_feature_0_13] --> 🔲 AtResourceSpec > A domain class annotated with \@Resources exposes an endpoint <!-- uniqueId=[engine:spock]/[spec:functionaltests.AtResourceSpec]/[feature:$spock_feature_0_0] --> 🔲 BookFunctionalSpec > Test that a book was created in the Bootstrap class <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookFunctionalSpec]/[feature:$spock_feature_1_1] --> 🔲 BookFunctionalSpec > Test that switching language results in correct encodings <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookFunctionalSpec]/[feature:$spock_feature_1_2] --> 🔲 BookFunctionalSpec > Test that when the /viewBooks URL is hit it redirects to the book list <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookFunctionalSpec]/[feature:$spock_feature_1_0] --> 🔲 BookFunctionalSpec > When creating a book the params are not on the url <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookFunctionalSpec]/[feature:$spock_feature_1_3] --> 🔲 BookIntegrationSpec > create book and save <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookIntegrationSpec]/[feature:$spock_feature_0_0] --> 🔲 BookIntegrationSpec > create book and save with where <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookIntegrationSpec]/[feature:$spock_feature_0_2] --> 🔲 BookIntegrationSpec > test toUpperCase <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookIntegrationSpec]/[feature:$spock_feature_0_3] --> 🔲 BookIntegrationSpec > test transaction rolled back from previous test <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookIntegrationSpec]/[feature:$spock_feature_0_1] --> 🔲 BookRestfulControllerSpec > A RestfulController exposes an index endpoint for a domain class <!-- uniqueId=[engine:spock]/[spec:functionaltests.BookRestfulControllerSpec]/[feature:$spock_feature_0_0] --> 🔲 CachingSpec > cache handles many different parameter values <!-- uniqueId=[engine:spock]/[spec:functionaltests.caching.CachingSpec]/[feature:$spock_feature_0_6] --> 🔲 CachingSpec > cache key includes multiple parameters <!-- uniqueId=[engine:spock]/[spec:functionaltests.caching.CachingSpec]/[feature:$spock_feature_0_7] --> 🔲 CachingSpec > cached method returns different result after eviction <!-- uniqueId=[engine:spock]/[spec:functionaltests.caching.CachingSpec]/[feature:$spock_feature_0_1] --> 🔲 CachingSpec > cached method returns same result on subsequent calls <!-- uniqueId=[engine:spock]/[spec:functionaltests.caching.CachingSpec]/[feature:$spock_feature_0_0] --> 🔲 CachingSpec > cached method with parameter uses parameter as key <!-- uniqueId=[engine:spock]/[spec:functionaltests.caching.CachingSpec]/[feature:$spock_feature_0_3] --> 🔲 CachingSpec > evicting all entries clears entire cache <!-- uniqueId=[engine:spock]/[spec:functionaltests.caching.CachingSpec]/[feature:$spock_feature_0_5] --> 🔲 CachingSpec > evicting specific cache entry leaves others intact <!-- uniqueId=[engine:spock]/[spec:functionaltests.caching.CachingSpec]/[feature:$spock_feature_0_4] --> 🔲 CachingSpec > multiple eviction and fetch cycles work correctly <!-- uniqueId=[engine:spock]/[spec:functionaltests.caching.CachingSpec]/[feature:$spock_feature_0_2] --> 🔲 ConditionalOnPropertyFromPluginYmlSpec > conditional bean messages confirm they were loaded via \@ConditionalOnProperty <!-- uniqueId=[engine:spock]/[spec:functionaltests.ConditionalOnPropertyFromPluginYmlSpec]/[feature:$spock_feature_1_1] --> 🔲 ConditionalOnPropertyFromPluginYmlSpec > conditional beans from plugin.yml properties are all present <!-- uniqueId=[engine:spock]/[spec:functionaltests.ConditionalOnPropertyFromPluginYmlSpec]/[feature:$spock_feature_1_0] --> 🔲 ConfigTestControllerSpec > Test that configuration properties are correctly read <!-- uniqueId=[engine:spock]/[spec:functionaltests.ConfigTestControllerSpec]/[feature:$spock_feature_1_0] --> 🔲 ControllerFromPluginSpec > test invoking a controller provided by a plugin <!-- uniqueId=[engine:spock]/[spec:functionaltests.ControllerFromPluginSpec]/[feature:$spock_feature_1_0] --> 🔲 ControllerIncludesSpec > Test includes that render a view work when called from a controller action <!-- uniqueId=[engine:spock]/[spec:functionaltests.ControllerIncludesSpec]/[feature:$spock_feature_1_0] --> 🔲 ControllerIncludesSpec > Test includes that render a view work when called from a template <!-- uniqueId=[engine:spock]/[spec:functionaltests.ControllerIncludesSpec]/[feature:$spock_feature_1_4] --> 🔲 ControllerIncludesSpec > Test includes that render a view work when called from another view <!-- uniqueId=[engine:spock]/[spec:functionaltests.ControllerIncludesSpec]/[feature:$spock_feature_1_2] --> 🔲 ControllerIncludesSpec > Test includes that render text work when called from a controller action <!-- uniqueId=[engine:spock]/[spec:functionaltests.ControllerIncludesSpec]/[feature:$spock_feature_1_1] --> 🔲 ControllerIncludesSpec > Test includes that render text work when called from a template <!-- uniqueId=[engine:spock]/[spec:functionaltests.ControllerIncludesSpec]/[feature:$spock_feature_1_5] --> 🔲 ControllerIncludesSpec > Test includes that render text work when called from another view <!-- uniqueId=[engine:spock]/[spec:functionaltests.ControllerIncludesSpec]/[feature:$spock_feature_1_3] --> 🔲 DataBindingSpec > data binding works <!-- uniqueId=[engine:spock]/[spec:functionaltests.DataBindingSpec]/[feature:$spock_feature_1_0] --> 🔲 ErrorsFunctionalSpec > Test 404 mapping to controller <!-- uniqueId=[engine:spock]/[spec:functionaltests.ErrorsFunctionalSpec]/[feature:$spock_feature_1_3] --> 🔲 ErrorsFunctionalSpec > Test 500 mappings for custom exceptions <!-- uniqueId=[engine:spock]/[spec:functionaltests.ErrorsFunctionalSpec]/[feature:$spock_feature_1_1] --> 🔲 ErrorsFunctionalSpec > Test Interceptor.afterView\(\) has access to the exception if thrown <!-- uniqueId=[engine:spock]/[spec:functionaltests.ErrorsFunctionalSpec]/[feature:$spock_feature_1_4] --> 🔲 ErrorsFunctionalSpec > Test default 500 mapping <!-- uniqueId=[engine:spock]/[spec:functionaltests.ErrorsFunctionalSpec]/[feature:$spock_feature_1_2] --> 🔲 ErrorsFunctionalSpec > Test exception handling methods for internal controller exceptions <!-- uniqueId=[engine:spock]/[spec:functionaltests.ErrorsFunctionalSpec]/[feature:$spock_feature_1_0] --> 🔲 ForwardingSpec > Test forward after populating flash <!-- uniqueId=[engine:spock]/[spec:functionaltests.ForwardingSpec]/[feature:$spock_feature_1_6] --> 🔲 ForwardingSpec > Test forward to named controller <!-- uniqueId=[engine:spock]/[spec:functionaltests.ForwardingSpec]/[feature:$spock_feature_1_3] --> 🔲 ForwardingSpec > Test forward to same controller <!-- uniqueId=[engine:spock]/[spec:functionaltests.ForwardingSpec]/[feature:$spock_feature_1_2] --> 🔲 ForwardingSpec > Test forward with parameters <!-- uniqueId=[engine:spock]/[spec:functionaltests.ForwardingSpec]/[feature:$spock_feature_1_4] --> 🔲 ForwardingSpec > Test forwarding to an action which returns a Map <!-- uniqueId=[engine:spock]/[spec:functionaltests.ForwardingSpec]/[feature:$spock_feature_1_5] --> 🔲 ForwardingSpec > forwarding to a view <!-- uniqueId=[engine:spock]/[spec:functionaltests.ForwardingSpec]/[feature:$spock_feature_1_7] --> 🔲 ForwardingSpec > params extracted from the URL path by a custom UrlMapping are forwarded <!-- uniqueId=[engine:spock]/[spec:functionaltests.ForwardingSpec]/[feature:$spock_feature_1_0] --> 🔲 ForwardingSpec > verifies params from the original url are passed to the forwarded action but not duplicated <!-- uniqueId=[engine:spock]/[spec:functionaltests.ForwardingSpec]/[feature:$spock_feature_1_1] --> 🔲 HomeSpec > Test the home page renders correctly <!-- uniqueId=[engine:spock]/[spec:functionaltests.HomeSpec]/[feature:$spock_feature_1_0] --> 🔲 InjectingDataSourceServiceSpec > you can inject DataSource with def dataSource <!-- uniqueId=[engine:spock]/[spec:functionaltests.InjectingDataSourceServiceSpec]/[feature:$spock_feature_0_0] --> 🔲 InspectConfigControllerSpec > test config properties from plugins <!-- uniqueId=[engine:spock]/[spec:functionaltests.InspectConfigControllerSpec]/[feature:$spock_feature_1_0] --> 🔲 InterceptorDependencyInjectionSpec > Test that interceptors are subjected to autowire by name <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorDependencyInjectionSpec]/[feature:$spock_feature_1_0] --> 🔲 InterceptorFunctionalSpec > Test that after interceptor can chain <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorFunctionalSpec]/[feature:$spock_feature_1_7] --> 🔲 InterceptorFunctionalSpec > Test that after interceptor can forward <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorFunctionalSpec]/[feature:$spock_feature_1_6] --> 🔲 InterceptorFunctionalSpec > Test that after interceptor can redirect <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorFunctionalSpec]/[feature:$spock_feature_1_5] --> 🔲 InterceptorFunctionalSpec > Test that after interceptor can render a model and view <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorFunctionalSpec]/[feature:$spock_feature_1_2] --> 🔲 InterceptorFunctionalSpec > Test that after interceptor can render text <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorFunctionalSpec]/[feature:$spock_feature_1_4] --> 🔲 InterceptorFunctionalSpec > Test that an after interceptor can render text and return false to disable view rendering <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorFunctionalSpec]/[feature:$spock_feature_1_1] --> 🔲 InterceptorFunctionalSpec > Test that an interceptor exception is handled correctly <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorFunctionalSpec]/[feature:$spock_feature_1_0] --> 🔲 InterceptorFunctionalSpec > Test that before interceptor can render a model and view <!-- uniqueId=[engine:spock]/[spec:functionaltests.InterceptorFunctionalSpec]/[feature:$spock_feature_1_3] --> 🔲 LoadAfterSpec > Test override one plugin view from another plugin <!-- uniqueId=[engine:spock]/[spec:functionaltests.LoadAfterSpec]/[feature:$spock_feature_1_0] --> 🔲 MiscFunctionalSpec > Test that bean override configuration works <!-- uniqueId=[engine:spock]/[spec:functionaltests.MiscFunctionalSpec]/[feature:$spock_feature_1_0] --> 🔲 MiscFunctionalSpec > Test that placeholder configuration works for the config object <!-- uniqueId=[engine:spock]/[spec:functionaltests.MiscFunctionalSpec]/[feature:$spock_feature_1_2] --> 🔲 MiscFunctionalSpec > Test that when an action returns null the view is rendered by convention <!-- uniqueId=[engine:spock]/[spec:functionaltests.MiscFunctionalSpec]/[feature:$spock_feature_1_1] --> 🔲 PluginViewsControllerSpec > Test that views from a plugin loaded after another plugin override when using loadAfter <!-- uniqueId=[engine:spock]/[spec:functionaltests.PluginViewsControllerSpec]/[feature:$spock_feature_1_1] --> 🔲 PluginViewsControllerSpec > Test that when plugin templates are rendered they render correctly <!-- uniqueId=[engine:spock]/[spec:functionaltests.PluginViewsControllerSpec]/[feature:$spock_feature_1_0] --> 🔲 RedirectInterceptorSpec > Test that an interceptor that redirects works <!-- uniqueId=[engine:spock]/[spec:functionaltests.RedirectInterceptorSpec]/[feature:$spock_feature_1_0] --> 🔲 RedirectWithAndWithoutParamsFunctionalSpec > Params are not added to the url after a redirect even if they are passed to the redirect <!-- uniqueId=[engine:spock]/[spec:functionaltests.RedirectWithAndWithoutParamsFunctionalSpec]/[feature:$spock_feature_1_0] --> 🔲 RedirectWithAndWithoutParamsFunctionalSpec > Params are not on the url when redirecting from UrlMappings with disabling params redirect <!-- uniqueId=[engine:spock]/[spec:functionaltests.RedirectWithAndWithoutParamsFunctionalSpec]/[feature:$spock_feature_1_2] --> 🔲 RedirectWithAndWithoutParamsFunctionalSpec > Params are not on the url when redirecting from UrlMappings without enabling params redirect <!-- uniqueId=[engine:spock]/[spec:functionaltests.RedirectWithAndWithoutParamsFunctionalSpec]/[feature:$spock_feature_1_1] --> 🔲 RedirectWithAndWithoutParamsFunctionalSpec > Params are on the url when redirecting from UrlMappings enabling params redirect <!-- uniqueId=[engine:spock]/[spec:functionaltests.RedirectWithAndWithoutParamsFunctionalSpec]/[feature:$spock_feature_1_3] --> 🔲 UploadControllerSpec > Test file upload <!-- uniqueId=[engine:spock]/[spec:functionaltests.UploadControllerSpec]/[feature:$spock_feature_1_0] --> 🔲 UploadControllerSpec > Test file upload parameters <!-- uniqueId=[engine:spock]/[spec:functionaltests.UploadControllerSpec]/[feature:$spock_feature_1_1] --> 🔲 UriMatchingInterceptorFunctionalSpec > Test that an interceptor that redirects works <!-- uniqueId=[engine:spock]/[spec:functionaltests.UriMatchingInterceptorFunctionalSpec]/[feature:$spock_feature_1_0] --> 🔲 ValidationFunctionalSpec > Test validation of a valid Hibernate entity <!-- uniqueId=[engine:spock]/[spec:functionaltests.ValidationFunctionalSpec]/[feature:$spock_feature_1_1] --> 🔲 ValidationFunctionalSpec > Test validation of an invalid Hibernate entity <!-- uniqueId=[engine:spock]/[spec:functionaltests.ValidationFunctionalSpec]/[feature:$spock_feature_1_0] --> 🔲 i18nSpec > Test i18n messages from plugins <!-- uniqueId=[engine:spock]/[spec:functionaltests.i18nSpec]/[feature:$spock_feature_1_0] --> Reuse successful test results: 🔲 ♻️ Only rerun the tests that failed or were muted before Click the checkbox to trigger a rerun: 🔲 **Rerun jobs** --- _Learn more about TestLens at [testlens.app](https://testlens.app)._ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
