You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@grails.apache.org by ma...@apache.org on 2025/10/28 14:08:29 UTC

(grails-core) 01/01: chore: formatting and cleanup

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

matrei pushed a commit to branch cleanup-post-15150
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit 79ab9c07b1c43ce28efd553607203bf08fb1c2ae
Author: Mattias Reichel <ma...@gmail.com>
AuthorDate: Tue Oct 28 15:08:08 2025 +0100

    chore: formatting and cleanup
---
 .../groovy/grails/gorm/async/AsyncEntity.groovy    |   1 +
 .../schemaless/ImplementsDynamicAttributes.groovy  |  38 ++-
 .../src/main/groovy/grails/gorm/MultiTenant.groovy |   1 +
 .../grails/gorm/time/TemporalConverter.groovy      |   4 +-
 .../grails/gorm/time/ZonedDateTimeConverter.groovy |   4 +-
 .../compiler/gorm/DirtyCheckingTransformer.groovy  |   3 +-
 .../compiler/gorm/GormEntityTransformation.groovy  |   1 -
 .../org/grails/datastore/gorm/GormEntity.groovy    |   3 +-
 .../datastore/gorm/GormEntityDirtyCheckable.groovy |   4 +-
 .../grails/datastore/gorm/GormValidateable.groovy  |   2 +
 .../gorm/schemaless/DynamicAttributes.groovy       |   1 +
 .../AbstractReadOperationImplementer.groovy        |   2 -
 .../AbstractWriteOperationImplementer.groovy       |   2 -
 .../IterableInterfaceProjectionBuilder.groovy      |   2 +-
 .../transform/ServiceTransformation.groovy         |   2 +-
 .../transform/TransactionalTransform.groovy        |   3 +-
 ...tDatastoreMethodDecoratingTransformation.groovy |   7 +-
 .../AbstractMethodDecoratingTransformation.groovy  |   2 +-
 .../jakarta/services/ValidatedService.groovy       |   1 +
 .../services/MethodValidationTransformSpec.groovy  | 113 +++++----
 .../grails/gorm/time/InstantConverterSpec.groovy   |  22 +-
 .../grails/gorm/time/LocalDateConverterSpec.groovy |  27 +-
 .../gorm/time/LocalDateTimeConverterSpec.groovy    |  38 +--
 .../grails/gorm/time/LocalTimeConverterSpec.groovy |  28 ++-
 .../gorm/time/OffsetDateTimeConverterSpec.groovy   |  46 ++--
 .../gorm/time/OffsetTimeConverterSpec.groovy       |  39 +--
 .../grails/gorm/time/PeriodConverterSpec.groovy    |  21 +-
 .../gorm/time/ZonedDateTimeConverterSpec.groovy    |  45 ++--
 .../gorm/EntityWithGenericSignaturesSpec.groovy    |  84 +++----
 .../compiler/gorm/GormEntityTransformSpec.groovy   | 273 +++++++++++----------
 .../compiler/gorm/JpaEntityTransformSpec.groovy    |  63 ++---
 .../main/groovy/grails/gorm/rx/MultiTenant.groovy  |   7 +-
 .../src/main/groovy/grails/gorm/rx/RxEntity.groovy |  19 +-
 .../datastore/rx/collection/RxCollection.groovy    |   4 +-
 .../transform/DelegateAsyncTransformation.java     |   1 -
 .../gorm/async/transform/DelegateAsyncSpec.groovy  |  41 ++--
 .../mapping/dirty/checking/DirtyCheckable.groovy   |   1 +
 .../datastore/mapping/services/Service.groovy      |   1 +
 .../dirty/checking/DirtyCheckableSpec.groovy       |  34 +--
 .../services/DefaultServiceRegistrySpec.groovy     |  30 +--
 40 files changed, 524 insertions(+), 496 deletions(-)

diff --git a/grails-datamapping-async/src/main/groovy/grails/gorm/async/AsyncEntity.groovy b/grails-datamapping-async/src/main/groovy/grails/gorm/async/AsyncEntity.groovy
index 8263d9443a..f941a2f686 100644
--- a/grails-datamapping-async/src/main/groovy/grails/gorm/async/AsyncEntity.groovy
+++ b/grails-datamapping-async/src/main/groovy/grails/gorm/async/AsyncEntity.groovy
@@ -21,6 +21,7 @@ package grails.gorm.async
 
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
+
 import org.grails.datastore.gorm.GormEnhancer
 import org.grails.datastore.gorm.GormEntity
 import org.grails.datastore.gorm.async.GormAsyncStaticApi
diff --git a/grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/schemaless/ImplementsDynamicAttributes.groovy b/grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/schemaless/ImplementsDynamicAttributes.groovy
index a0469bede3..447bfc02f8 100644
--- a/grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/schemaless/ImplementsDynamicAttributes.groovy
+++ b/grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/schemaless/ImplementsDynamicAttributes.groovy
@@ -18,46 +18,44 @@
  */
 package org.grails.datastore.gorm.schemaless
 
+import java.lang.reflect.Method
+
 import groovy.transform.Generated
+
 import spock.lang.Issue
 import spock.lang.Specification
 
-import java.lang.reflect.Method
-
-
 class DynamicDomainSpec extends Specification {
 
-    @Issue("GDM-769")
-    void "Test a domain with dynamic attributes doesn't try to set readonly properties"() {
+    @Issue('GDM-769')
+    void 'test a domain with dynamic attributes does not try to set readonly properties'() {
         given:
-        DynamicEntity entity = new DynamicEntity()
+        def entity = new DynamicEntity()
 
         when:
-        entity.putAt("foo", 123)
-        entity.putAt("name", "Sally")
+        entity.putAt('foo', 123)
+        entity.putAt('name', 'Sally')
 
         then:
-        entity.foo == "foo"
-        entity.name == "Sally"
-        entity.getAt("foo") == "foo"
-        !entity.attributes().containsKey("name")
+        entity.foo == 'foo'
+        entity.name == 'Sally'
+        entity.getAt('foo') == 'foo'
+        !entity.attributes().containsKey('name')
         entity.attributes().foo == 123
     }
 
-    void "test that all DynamicAttributes trait methods are marked as Generated"() {
-        expect: "all DynamicAttributes methods are marked as Generated on implementation class"
-        DynamicAttributes.getMethods().each { Method traitMethod ->
-            assert DynamicEntity.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all DynamicAttributes trait methods are marked as Generated'() {
+
+        expect: 'all DynamicAttributes methods are marked as Generated on implementation class'
+        DynamicAttributes.methods.each { Method traitMethod ->
+            assert DynamicEntity.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
 
 class DynamicEntity implements DynamicAttributes {
-
     String name
-
     String getFoo() {
-        "foo"
+        'foo'
     }
-
 }
diff --git a/grails-datamapping-core/src/main/groovy/grails/gorm/MultiTenant.groovy b/grails-datamapping-core/src/main/groovy/grails/gorm/MultiTenant.groovy
index 4e93062bc6..7f429caca1 100644
--- a/grails-datamapping-core/src/main/groovy/grails/gorm/MultiTenant.groovy
+++ b/grails-datamapping-core/src/main/groovy/grails/gorm/MultiTenant.groovy
@@ -21,6 +21,7 @@ package grails.gorm
 
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
+
 import grails.gorm.api.GormAllOperations
 import org.grails.datastore.gorm.GormEnhancer
 import org.grails.datastore.mapping.core.connections.ConnectionSource
diff --git a/grails-datamapping-core/src/main/groovy/grails/gorm/time/TemporalConverter.groovy b/grails-datamapping-core/src/main/groovy/grails/gorm/time/TemporalConverter.groovy
index be4092e6af..8f26fba149 100644
--- a/grails-datamapping-core/src/main/groovy/grails/gorm/time/TemporalConverter.groovy
+++ b/grails-datamapping-core/src/main/groovy/grails/gorm/time/TemporalConverter.groovy
@@ -19,12 +19,12 @@
 
 package grails.gorm.time
 
-import groovy.transform.Generated
-
 import java.time.Instant
 import java.time.ZoneId
 import java.time.ZoneOffset
 
+import groovy.transform.Generated
+
 trait TemporalConverter<T> {
 
     abstract Long convert(T value)
diff --git a/grails-datamapping-core/src/main/groovy/grails/gorm/time/ZonedDateTimeConverter.groovy b/grails-datamapping-core/src/main/groovy/grails/gorm/time/ZonedDateTimeConverter.groovy
index 8e6b4fa65f..70fb9946ab 100644
--- a/grails-datamapping-core/src/main/groovy/grails/gorm/time/ZonedDateTimeConverter.groovy
+++ b/grails-datamapping-core/src/main/groovy/grails/gorm/time/ZonedDateTimeConverter.groovy
@@ -33,14 +33,14 @@ import groovy.transform.Generated
 @CompileStatic
 trait ZonedDateTimeConverter implements TemporalConverter<ZonedDateTime> {
 
-    @Generated
     @Override
+    @Generated
     Long convert(ZonedDateTime value) {
         value.toInstant().toEpochMilli()
     }
 
-    @Generated
     @Override
+    @Generated
     ZonedDateTime convert(Long value) {
         ZonedDateTime.ofInstant(Instant.ofEpochMilli(value), systemOffset)
     }
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/DirtyCheckingTransformer.groovy b/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/DirtyCheckingTransformer.groovy
index cad27db9b5..cae27a0f4c 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/DirtyCheckingTransformer.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/DirtyCheckingTransformer.groovy
@@ -56,6 +56,7 @@ import org.grails.datastore.mapping.reflect.ReflectionUtils
 import static java.lang.reflect.Modifier.PUBLIC
 import static java.lang.reflect.Modifier.isFinal
 import static java.lang.reflect.Modifier.isTransient
+import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 import static org.codehaus.groovy.ast.tools.GeneralUtils.args
 import static org.codehaus.groovy.ast.tools.GeneralUtils.assignS
 import static org.codehaus.groovy.ast.tools.GeneralUtils.block
@@ -72,7 +73,6 @@ import static org.grails.datastore.mapping.reflect.AstUtils.ZERO_PARAMETERS
 import static org.grails.datastore.mapping.reflect.AstUtils.addAnnotationIfNecessary
 import static org.grails.datastore.mapping.reflect.AstUtils.hasAnnotation
 import static org.grails.datastore.mapping.reflect.AstUtils.isDomainClass
-import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 
 /**
  *
@@ -218,7 +218,6 @@ class DirtyCheckingTransformer implements CompilationUnitAware {
                                     null,
                                     GeneralUtils.returnS(GeneralUtils.varX(propertyField))
                             )
-
                             markAsGenerated(classNode, getIdMethod)
                             classNode.addMethod(getIdMethod)
                             getIdMethod.addAnnotation(GormEntityTransformation.JPA_TRANSIENT_ANNOTATION_NODE)
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/GormEntityTransformation.groovy b/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/GormEntityTransformation.groovy
index d20647c2b5..121cc89575 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/GormEntityTransformation.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/GormEntityTransformation.groovy
@@ -350,7 +350,6 @@ class GormEntityTransformation extends AbstractASTTransformation implements Comp
                                             }
                                             methodBody.addStatement(returnS(createNamedQueryCall))
                                             MethodNode newMethod = new MethodNode(methodName, Modifier.PUBLIC | Modifier.STATIC, queryOperationsClassNode, newParams, null, methodBody)
-
                                             markAsGenerated(thisClassNode, newMethod)
                                             thisClassNode.addMethod(newMethod)
 
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormEntity.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormEntity.groovy
index f0ceb2b4e8..8bdba0199a 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormEntity.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormEntity.groovy
@@ -21,6 +21,7 @@ package org.grails.datastore.gorm
 import groovy.transform.CompileDynamic
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
+
 import jakarta.persistence.Transient
 
 import org.springframework.transaction.TransactionDefinition
@@ -58,8 +59,8 @@ trait GormEntity<D> implements GormValidateable, DirtyCheckable, GormEntityApi<D
      * @param name The property name
      * @return The property value
      */
-    @CompileDynamic
     @Generated
+    @CompileDynamic
     def propertyMissing(String name) {
         GormEnhancer.findInstanceApi(getClass()).propertyMissing(this, name)
     }
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormEntityDirtyCheckable.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormEntityDirtyCheckable.groovy
index 9b5edc66e0..8d09901092 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormEntityDirtyCheckable.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormEntityDirtyCheckable.groovy
@@ -19,9 +19,8 @@
 package org.grails.datastore.gorm
 
 import groovy.transform.CompileStatic
+import groovy.transform.Generated
 
-import jakarta.annotation.Generated
-import groovy.transform.Generated as GroovyGenerated
 import org.grails.datastore.mapping.config.Property
 import org.grails.datastore.mapping.dirty.checking.DirtyCheckable
 import org.grails.datastore.mapping.model.PersistentEntity
@@ -39,7 +38,6 @@ trait GormEntityDirtyCheckable extends DirtyCheckable {
 
     @Override
     @Generated
-    @GroovyGenerated
     boolean hasChanged(String propertyName) {
         PersistentEntity entity = currentGormInstanceApi().persistentEntity
 
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormValidateable.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormValidateable.groovy
index 2baf26e05e..6b6be5e917 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormValidateable.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/GormValidateable.groovy
@@ -20,6 +20,7 @@ package org.grails.datastore.gorm
 
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
+
 import jakarta.persistence.Transient
 
 import org.springframework.validation.Errors
@@ -38,6 +39,7 @@ trait GormValidateable {
 
     @Transient
     private transient boolean skipValidate = false
+
     /**
      * The validation errors object
      */
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/schemaless/DynamicAttributes.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/schemaless/DynamicAttributes.groovy
index 2003abc726..84240b5547 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/schemaless/DynamicAttributes.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/schemaless/DynamicAttributes.groovy
@@ -21,6 +21,7 @@ package org.grails.datastore.gorm.schemaless
 
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
+
 import org.grails.datastore.mapping.dirty.checking.DirtyCheckable
 
 /**
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/AbstractReadOperationImplementer.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/AbstractReadOperationImplementer.groovy
index 08cf9aeffe..bbfbb3a6b5 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/AbstractReadOperationImplementer.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/AbstractReadOperationImplementer.groovy
@@ -66,9 +66,7 @@ abstract class AbstractReadOperationImplementer extends AbstractServiceImplement
             domainClassNode = domainClassFromSignature
         }
         doImplement(domainClassNode, abstractMethodNode, newMethodNode, targetClassNode)
-
         markAsGenerated(targetClassNode, newMethodNode)
-
         abstractMethodNode.putNodeMetaData(IMPLEMENTED, Boolean.TRUE)
     }
 
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/AbstractWriteOperationImplementer.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/AbstractWriteOperationImplementer.groovy
index a08205afb3..882c1c3274 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/AbstractWriteOperationImplementer.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/AbstractWriteOperationImplementer.groovy
@@ -57,9 +57,7 @@ abstract class AbstractWriteOperationImplementer extends AbstractServiceImplemen
         }
 
         doImplement(domainClassNode, abstractMethodNode, newMethodNode, targetClassNode)
-
         markAsGenerated(targetClassNode, newMethodNode)
-
         abstractMethodNode.putNodeMetaData(IMPLEMENTED, Boolean.TRUE)
     }
 
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/IterableInterfaceProjectionBuilder.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/IterableInterfaceProjectionBuilder.groovy
index 000c71283f..78bda7209a 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/IterableInterfaceProjectionBuilder.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/implementers/IterableInterfaceProjectionBuilder.groovy
@@ -65,8 +65,8 @@ trait IterableInterfaceProjectionBuilder extends InterfaceProjectionBuilder {
      * @param returnType
      * @return True if it is
      */
-    @Generated
     @Override
+    @Generated
     boolean isInterfaceProjection(ClassNode domainClass, MethodNode methodNode, ClassNode returnType) {
         if (AstUtils.isSubclassOfOrImplementsInterface(returnType, Iterable.name) || returnType.isArray()) {
             ClassNode genericType = AstGenericsUtils.resolveSingleGenericType(returnType)
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/transform/ServiceTransformation.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/transform/ServiceTransformation.groovy
index b0808d594b..ce8c338fd2 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/transform/ServiceTransformation.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/services/transform/ServiceTransformation.groovy
@@ -88,6 +88,7 @@ import org.grails.datastore.gorm.validation.jakarta.services.implementers.Method
 import org.grails.datastore.mapping.core.Datastore
 import org.grails.datastore.mapping.core.order.OrderedComparator
 
+import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 import static org.codehaus.groovy.ast.tools.GeneralUtils.assignS
 import static org.codehaus.groovy.ast.tools.GeneralUtils.assignX
 import static org.codehaus.groovy.ast.tools.GeneralUtils.block
@@ -108,7 +109,6 @@ import static org.grails.datastore.mapping.reflect.AstUtils.error
 import static org.grails.datastore.mapping.reflect.AstUtils.findAllUnimplementedAbstractMethods
 import static org.grails.datastore.mapping.reflect.AstUtils.findAnnotation
 import static org.grails.datastore.mapping.reflect.AstUtils.hasAnnotation
-import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 import static org.grails.datastore.mapping.reflect.AstUtils.warning
 
 /**
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transactions/transform/TransactionalTransform.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transactions/transform/TransactionalTransform.groovy
index a4fcbaa100..050d12ca46 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transactions/transform/TransactionalTransform.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transactions/transform/TransactionalTransform.groovy
@@ -55,6 +55,7 @@ import org.grails.datastore.mapping.multitenancy.MultiTenantCapableDatastore
 import org.grails.datastore.mapping.transactions.CustomizableRollbackTransactionAttribute
 import org.grails.datastore.mapping.transactions.TransactionCapableDatastore
 
+import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 import static org.codehaus.groovy.ast.ClassHelper.CLASS_Type
 import static org.codehaus.groovy.ast.ClassHelper.STRING_TYPE
 import static org.codehaus.groovy.ast.ClassHelper.VOID_TYPE
@@ -86,7 +87,6 @@ import static org.grails.datastore.mapping.reflect.AstUtils.findAnnotation
 import static org.grails.datastore.mapping.reflect.AstUtils.hasOrInheritsProperty
 import static org.grails.datastore.mapping.reflect.AstUtils.implementsInterface
 import static org.grails.datastore.mapping.reflect.AstUtils.isSubclassOf
-import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 import static org.grails.datastore.mapping.reflect.AstUtils.nonGeneric
 import static org.grails.datastore.mapping.reflect.AstUtils.varThis
 
@@ -339,7 +339,6 @@ class TransactionalTransform extends AbstractDatastoreMethodDecoratingTransforma
                             parameters,
                             null,
                             setterBody)
-
                     markAsGenerated(declaringClassNode, setterNode)
                 }
             }
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transform/AbstractDatastoreMethodDecoratingTransformation.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transform/AbstractDatastoreMethodDecoratingTransformation.groovy
index 1dcd715cad..7bfa704ea0 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transform/AbstractDatastoreMethodDecoratingTransformation.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transform/AbstractDatastoreMethodDecoratingTransformation.groovy
@@ -41,6 +41,7 @@ import org.grails.datastore.gorm.internal.RuntimeSupport
 import org.grails.datastore.mapping.core.Datastore
 import org.grails.datastore.mapping.core.connections.MultipleConnectionSourceCapableDatastore
 
+import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 import static org.codehaus.groovy.ast.ClassHelper.STRING_TYPE
 import static org.codehaus.groovy.ast.ClassHelper.VOID_TYPE
 import static org.codehaus.groovy.ast.ClassHelper.make
@@ -61,7 +62,6 @@ import static org.grails.datastore.mapping.reflect.AstUtils.ZERO_PARAMETERS
 import static org.grails.datastore.mapping.reflect.AstUtils.addAnnotationOrGetExisting
 import static org.grails.datastore.mapping.reflect.AstUtils.implementsInterface
 import static org.grails.datastore.mapping.reflect.AstUtils.isSpockTest
-import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 
 /**
  * An abstract implementation for transformations that decorate a method invocation such that
@@ -208,17 +208,14 @@ abstract class AbstractDatastoreMethodDecoratingTransformation extends AbstractM
                                     returnS(datastoreFieldVar),
                                     returnS(datastoreLookupDefaultCall))
                     )
-
                     markAsGenerated(declaringClassNode, mn)
+
                     if (!isSpockTest) {
                         compileMethodStatically(source, mn)
                     }
-
                 }
             }
-
         }
-
     }
 
     protected void weaveSetTargetDatastoreBody(SourceUnit source, AnnotationNode annotationNode, ClassNode declaringClassNode, Expression datastoreVar, BlockStatement setTargetDatastoreBody) {
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transform/AbstractMethodDecoratingTransformation.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transform/AbstractMethodDecoratingTransformation.groovy
index 16f608bbdb..9141abb453 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transform/AbstractMethodDecoratingTransformation.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/transform/AbstractMethodDecoratingTransformation.groovy
@@ -47,6 +47,7 @@ import jakarta.annotation.PreDestroy
 
 import org.grails.datastore.mapping.reflect.NameUtils
 
+import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 import static org.codehaus.groovy.ast.ClassHelper.VOID_TYPE
 import static org.codehaus.groovy.ast.tools.GeneralUtils.args
 import static org.codehaus.groovy.ast.tools.GeneralUtils.block
@@ -56,7 +57,6 @@ import static org.codehaus.groovy.ast.tools.GeneralUtils.closureX
 import static org.codehaus.groovy.ast.tools.GeneralUtils.returnS
 import static org.codehaus.groovy.ast.tools.GeneralUtils.stmt
 import static org.codehaus.groovy.ast.tools.GeneralUtils.varX
-import static org.apache.groovy.ast.tools.AnnotatedNodeUtils.markAsGenerated
 import static org.grails.datastore.gorm.transform.AstMethodDispatchUtils.paramsForArgs
 import static org.grails.datastore.mapping.reflect.AstUtils.COMPILE_STATIC_TYPE
 import static org.grails.datastore.mapping.reflect.AstUtils.EMPTY_CLASS_ARRAY
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/validation/jakarta/services/ValidatedService.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/validation/jakarta/services/ValidatedService.groovy
index 16d5f29e91..10e7232f21 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/validation/jakarta/services/ValidatedService.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/validation/jakarta/services/ValidatedService.groovy
@@ -23,6 +23,7 @@ import java.lang.reflect.Method
 
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
+
 import jakarta.validation.Configuration
 import jakarta.validation.ConstraintViolation
 import jakarta.validation.ConstraintViolationException
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/services/MethodValidationTransformSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/services/MethodValidationTransformSpec.groovy
index c4cb871f9c..001de02cf6 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/services/MethodValidationTransformSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/services/MethodValidationTransformSpec.groovy
@@ -18,100 +18,97 @@
  */
 package grails.gorm.services
 
-import groovy.transform.Generated
+import java.lang.reflect.Method
 
-import grails.gorm.annotation.Entity
-import grails.validation.ValidationException
-import jakarta.validation.constraints.NotNull
-import org.grails.datastore.gorm.validation.jakarta.services.ValidatedService
-import spock.lang.Specification
+import groovy.transform.Generated
 
 import jakarta.validation.ConstraintViolationException
 import jakarta.validation.ParameterNameProvider
-import java.lang.reflect.Method
+import jakarta.validation.constraints.NotNull
 
-/**
- * Created by graemerocher on 14/02/2017.
- */
-class MethodValidationTransformSpec extends Specification {
+import spock.lang.Specification
 
-    void "test simple validated property"() {
-        when:"The service transform is applied to an interface it can't implement"
-        Class service = new GroovyClassLoader().parseClass('''
-import grails.gorm.services.*
 import grails.gorm.annotation.Entity
-import jakarta.validation.constraints.*
-
-@Service(Foo)
-interface MyService {
+import grails.validation.ValidationException
+import org.grails.datastore.gorm.validation.jakarta.services.ValidatedService
 
-    @grails.gorm.transactions.NotTransactional
-    Foo find(@NotNull String title) throws jakarta.validation.ConstraintViolationException
-    
-    @grails.gorm.transactions.NotTransactional
-    Foo findAgain(@NotNull @NotBlank String title)
-}
-@Entity
-class Foo {
-    String title
-}
+class MethodValidationTransformSpec extends Specification {
 
-''')
+    void 'test simple validated property'() {
+
+        when: 'the service transform is applied to an interface it cannot implement'
+        def serviceClass = new GroovyClassLoader().parseClass('''
+            import grails.gorm.services.*
+            import grails.gorm.annotation.Entity
+            import jakarta.validation.constraints.*
+            
+            @Service(Foo)
+            interface MyService {
+            
+                @grails.gorm.transactions.NotTransactional
+                Foo find(@NotNull String title) throws jakarta.validation.ConstraintViolationException
+                
+                @grails.gorm.transactions.NotTransactional
+                Foo findAgain(@NotNull @NotBlank String title)
+            }
+            @Entity
+            class Foo {
+                String title
+            }
+        ''')
 
         then:
-        service.isInterface()
-        println service.classLoader.loadedClasses
+        serviceClass.isInterface()
 
-        when:"the impl is obtained"
-        Class impl = service.classLoader.loadClass("\$MyServiceImplementation")
+        when: 'the impl is obtained'
+        def implClass = serviceClass.classLoader.loadClass('$MyServiceImplementation')
 
-        then:"The impl is valid"
-        org.grails.datastore.mapping.services.Service.isAssignableFrom(impl)
-        ValidatedService.isAssignableFrom(impl)
+        then: 'the impl is valid'
+        org.grails.datastore.mapping.services.Service.isAssignableFrom(implClass)
+        ValidatedService.isAssignableFrom(implClass)
 
-        and: "All implemented Trait methods are marked as Generated"
-        ValidatedService.getMethods().each { Method traitMethod ->
-            assert impl.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+        and: 'all implemented Trait methods are marked as Generated'
+        ValidatedService.methods.each { Method traitMethod ->
+            assert implClass.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
 
-        when:"The parameter data is obtained"
-        ParameterNameProvider parameterNameProvider = service.classLoader.loadClass("\$MyServiceImplementation\$ParameterNameProvider").newInstance()
-        def instance = impl.newInstance()
+        when: 'the parameter data is obtained'
+        def parameterNameProvider = (ParameterNameProvider) serviceClass.classLoader.loadClass('$MyServiceImplementation$ParameterNameProvider').newInstance()
+        def instance = implClass.newInstance()
 
-        then:"It is correct"
+        then: 'it is correct'
         parameterNameProvider != null
-        parameterNameProvider.getParameterNames(impl.getMethod("find", String)) == ["title"]
+        parameterNameProvider.getParameterNames(implClass.getMethod('find', String)) == ['title']
         instance.parameterNameProvider != null
-        instance.parameterNameProvider.getParameterNames(impl.getMethod("find", String)) == ["title"]
+        instance.parameterNameProvider.getParameterNames(implClass.getMethod('find', String)) == ['title']
         instance.validatorFactory != null
 
-
         when:
         instance.find(null)
 
         then:
-        def e = thrown( ConstraintViolationException)
-        e.constraintViolations.size() == 1
-        e.constraintViolations.first().messageTemplate == '{jakarta.validation.constraints.NotNull.message}'
-        e.constraintViolations.first().propertyPath.toString() == 'find.title'
+        def constraintViolationException = thrown(ConstraintViolationException)
+        constraintViolationException.constraintViolations.size() == 1
+        constraintViolationException.constraintViolations.first().messageTemplate == '{jakarta.validation.constraints.NotNull.message}'
+        constraintViolationException.constraintViolations.first().propertyPath.toString() == 'find.title'
 
         when:
-        instance.findAgain("")
+        instance.findAgain('')
 
         then:
-        def e2 = thrown( ValidationException )
-        e2.message
-        e2.errors.hasErrors()
-        e2.errors.hasFieldErrors('title')
-        e2.errors.getFieldValue('title') == ""
+        def validationException =  thrown(ValidationException)
+        validationException.message
+        validationException.errors.hasErrors()
+        validationException.errors.hasFieldErrors('title')
+        validationException.errors.getFieldValue('title') == ''
     }
 }
 
 @Service(Foo)
 interface MyService {
-
     Foo find(@NotNull String title)
 }
+
 @Entity
 class Foo {
     String title
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/time/InstantConverterSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/time/InstantConverterSpec.groovy
index 3ccd2f0421..20729af85d 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/time/InstantConverterSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/time/InstantConverterSpec.groovy
@@ -18,13 +18,14 @@
  */
 package grails.gorm.time
 
-import spock.lang.Shared
-import groovy.transform.Generated
-import spock.lang.Specification
-
 import java.lang.reflect.Method
 import java.time.Instant
 
+import groovy.transform.Generated
+
+import spock.lang.Shared
+import spock.lang.Specification
+
 class InstantConverterSpec extends Specification implements InstantConverter {
 
     @Shared
@@ -34,20 +35,21 @@ class InstantConverterSpec extends Specification implements InstantConverter {
         instant = Instant.ofEpochMilli(100)
     }
 
-    void "test convert to long"() {
+    void 'test convert to long'() {
         expect:
         convert(instant) == 100L
     }
 
-    void "test convert from long"() {
+    void 'test convert from long'() {
         expect:
         convert(100L) == instant
     }
 
-    void "test that all InstantConverter trait methods are marked as Generated"() {
-        expect: "all InstantConverter methods are marked as Generated on implementation class"
-        InstantConverter.getMethods().each { Method traitMethod ->
-            assert InstantConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all InstantConverter trait methods are marked as Generated'() {
+
+        expect: 'all InstantConverter methods are marked as Generated on implementation class'
+        InstantConverter.methods.each { Method traitMethod ->
+            assert InstantConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalDateConverterSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalDateConverterSpec.groovy
index 538fbb2489..b1ba813714 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalDateConverterSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalDateConverterSpec.groovy
@@ -18,13 +18,13 @@
  */
 package grails.gorm.time
 
-import spock.lang.Shared
-import spock.lang.Specification
+import java.lang.reflect.Method
+import java.time.LocalDate
 
 import groovy.transform.Generated
 
-import java.lang.reflect.Method
-import java.time.LocalDate
+import spock.lang.Shared
+import spock.lang.Specification
 
 class LocalDateConverterSpec extends Specification implements LocalDateConverter {
 
@@ -35,25 +35,26 @@ class LocalDateConverterSpec extends Specification implements LocalDateConverter
         localDate = LocalDate.of(1941, 1, 5)
     }
 
-    void "test convert to long"() {
+    void 'test convert to long'() {
         expect:
         convert(localDate) == -914803200000L
     }
 
-    void "test convert from long"() {
+    void 'test convert from long'() {
         expect:
         convert(-914803200000L) == localDate
     }
 
-    void "test that all LocalDateConverter/TemporalConverter trait methods are marked as Generated"() {
-        expect: "all LocalDateConverter methods are marked as Generated on implementation class"
-        LocalDateConverter.getMethods().each { Method traitMethod ->
-            assert LocalDateConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all LocalDateConverter/TemporalConverter trait methods are marked as Generated'() {
+
+        expect: 'all LocalDateConverter methods are marked as Generated on implementation class'
+        LocalDateConverter.methods.each { Method traitMethod ->
+            assert LocalDateConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
 
-        and: "all TemporalConverter methods are marked as Generated on implementation class"
-        TemporalConverter.getMethods().each { Method traitMethod ->
-            assert LocalDateConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+        and: 'all TemporalConverter methods are marked as Generated on implementation class'
+        TemporalConverter.methods.each { Method traitMethod ->
+            assert LocalDateConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalDateTimeConverterSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalDateTimeConverterSpec.groovy
index a9521589ac..c209612fcb 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalDateTimeConverterSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalDateTimeConverterSpec.groovy
@@ -18,47 +18,49 @@
  */
 package grails.gorm.time
 
-import spock.lang.Shared
-import spock.lang.Specification
-
-import groovy.transform.Generated
-
 import java.lang.reflect.Method
 import java.time.LocalDate
 import java.time.LocalDateTime
 import java.time.LocalTime
 
+import groovy.transform.Generated
+
+import spock.lang.Shared
+import spock.lang.Specification
+
 class LocalDateTimeConverterSpec extends Specification implements LocalDateTimeConverter {
 
     @Shared
     LocalDateTime localDateTime
 
     void setupSpec() {
-        TimeZone.default = TimeZone.getTimeZone("America/Los_Angeles")
-        LocalTime localTime = LocalTime.of(6,5,4,3)
-        LocalDate localDate = LocalDate.of(1941, 1, 5)
-        localDateTime = LocalDateTime.of(localDate, localTime)
+        TimeZone.default = TimeZone.getTimeZone('America/Los_Angeles')
+        localDateTime = LocalDateTime.of(
+                LocalDate.of(1941, 1, 5),
+                LocalTime.of(6,5,4,3)
+        )
     }
 
-    void "test convert to long"() {
+    void 'test convert to long'() {
         expect:
         convert(localDateTime) == -914781296000L
     }
 
-    void "test convert from long"() {
+    void 'test convert from long'() {
         expect:
         convert(-914781296000L) == localDateTime.withNano(0)
     }
 
-    void "test that all LocalDateTimeConverter/TemporalConverter trait methods are marked as Generated"() {
-        expect: "all LocalDateTimeConverter methods are marked as Generated on implementation class"
-        LocalDateTimeConverter.getMethods().each { Method traitMethod ->
-            assert LocalDateTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all LocalDateTimeConverter/TemporalConverter trait methods are marked as Generated'() {
+
+        expect: 'all LocalDateTimeConverter methods are marked as Generated on implementation class'
+        LocalDateTimeConverter.methods.each { Method traitMethod ->
+            assert LocalDateTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
 
-        and: "all TemporalConverter methods are marked as Generated on implementation class"
-        TemporalConverter.getMethods().each { Method traitMethod ->
-            assert LocalDateTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+        and: 'all TemporalConverter methods are marked as Generated on implementation class'
+        TemporalConverter.methods.each { Method traitMethod ->
+            assert LocalDateTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalTimeConverterSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalTimeConverterSpec.groovy
index 282f20801d..33a6755bb2 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalTimeConverterSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/time/LocalTimeConverterSpec.groovy
@@ -18,13 +18,14 @@
  */
 package grails.gorm.time
 
-import spock.lang.Shared
-import spock.lang.Specification
-import groovy.transform.Generated
-
 import java.lang.reflect.Method
 import java.time.LocalTime
 
+import groovy.transform.Generated
+
+import spock.lang.Shared
+import spock.lang.Specification
+
 class LocalTimeConverterSpec extends Specification implements LocalTimeConverter {
 
     @Shared
@@ -34,25 +35,26 @@ class LocalTimeConverterSpec extends Specification implements LocalTimeConverter
         localTime = LocalTime.of(6,5,4,3)
     }
 
-    void "test convert to long"() {
+    void 'test convert to long'() {
         expect:
         convert(localTime) == 21904000000003L
     }
 
-    void "test convert from long"() {
+    void 'test convert from long'() {
         expect:
         convert(21904000000003L) == localTime
     }
 
-    void "test that all LocalTimeConverter/TemporalConverter trait methods are marked as Generated"() {
-        expect: "all LocalTimeConverter methods are marked as Generated on implementation class"
-        LocalTimeConverter.getMethods().each { Method traitMethod ->
-            assert LocalTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all LocalTimeConverter/TemporalConverter trait methods are marked as Generated'() {
+
+        expect: 'all LocalTimeConverter methods are marked as Generated on implementation class'
+        LocalTimeConverter.methods.each { Method traitMethod ->
+            assert LocalTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
 
-        and: "all TemporalConverter methods are marked as Generated on implementation class"
-        TemporalConverter.getMethods().each { Method traitMethod ->
-            assert LocalTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+        and: 'all TemporalConverter methods are marked as Generated on implementation class'
+        TemporalConverter.methods.each { Method traitMethod ->
+            assert LocalTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/time/OffsetDateTimeConverterSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/time/OffsetDateTimeConverterSpec.groovy
index afc47bea35..c08a69bf18 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/time/OffsetDateTimeConverterSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/time/OffsetDateTimeConverterSpec.groovy
@@ -18,13 +18,17 @@
  */
 package grails.gorm.time
 
-import spock.lang.Shared
-import spock.lang.Specification
+import java.lang.reflect.Method
+import java.time.LocalDate
+import java.time.LocalDateTime
+import java.time.LocalTime
+import java.time.OffsetDateTime
+import java.time.ZoneOffset
 
 import groovy.transform.Generated
 
-import java.lang.reflect.Method
-import java.time.*
+import spock.lang.Shared
+import spock.lang.Specification
 
 class OffsetDateTimeConverterSpec extends Specification implements OffsetDateTimeConverter {
 
@@ -32,36 +36,40 @@ class OffsetDateTimeConverterSpec extends Specification implements OffsetDateTim
     OffsetDateTime offsetDateTime
 
     void setupSpec() {
-        TimeZone.default = TimeZone.getTimeZone("America/Los_Angeles")
-        LocalTime localTime = LocalTime.of(6,5,4,3)
-        LocalDate localDate = LocalDate.of(1941, 1, 5)
-        LocalDateTime localDateTime = LocalDateTime.of(localDate, localTime)
-        offsetDateTime = OffsetDateTime.of(localDateTime, ZoneOffset.ofHours(-6))
+        TimeZone.default = TimeZone.getTimeZone('America/Los_Angeles')
+        offsetDateTime = OffsetDateTime.of(
+                LocalDateTime.of(
+                        LocalDate.of(1941, 1, 5),
+                        LocalTime.of(6,5,4,3)
+                ),
+                ZoneOffset.ofHours(-6)
+        )
     }
 
-    void "test convert to long"() {
+    void 'test convert to long'() {
         expect:
         convert(offsetDateTime) == -914759696000L
     }
 
-    void "test convert from long"() {
+    void 'test convert from long'() {
         given:
-        OffsetDateTime converted = convert(-914759696000L)
+        def converted = convert(-914759696000L)
 
         expect:
         converted == offsetDateTime.withNano(0).withOffsetSameInstant(ZoneOffset.ofHours(-7)) ||
                 converted == offsetDateTime.withNano(0).withOffsetSameInstant(ZoneOffset.ofHours(-8))
     }
 
-    void "test that all OffsetDateTimeConverter/TemporalConverter trait methods are marked as Generated"() {
-        expect: "all OffsetDateTimeConverter methods are marked as Generated on implementation class"
-        OffsetDateTimeConverter.getMethods().each { Method traitMethod ->
-            assert OffsetDateTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all OffsetDateTimeConverter/TemporalConverter trait methods are marked as Generated'() {
+
+        expect: 'all OffsetDateTimeConverter methods are marked as Generated on implementation class'
+        OffsetDateTimeConverter.methods.each { Method traitMethod ->
+            assert OffsetDateTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
 
-        and: "all TemporalConverter methods are marked as Generated on implementation class"
-        TemporalConverter.getMethods().each { Method traitMethod ->
-            assert OffsetDateTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+        and: 'all TemporalConverter methods are marked as Generated on implementation class'
+        TemporalConverter.methods.each { Method traitMethod ->
+            assert OffsetDateTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/time/OffsetTimeConverterSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/time/OffsetTimeConverterSpec.groovy
index 372f5dc9e3..83acef8cb3 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/time/OffsetTimeConverterSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/time/OffsetTimeConverterSpec.groovy
@@ -18,50 +18,53 @@
  */
 package grails.gorm.time
 
-import spock.lang.Shared
-import spock.lang.Specification
-
-import groovy.transform.Generated
-
 import java.lang.reflect.Method
 import java.time.LocalTime
 import java.time.OffsetTime
 import java.time.ZoneOffset
 
+import groovy.transform.Generated
+
+import spock.lang.Shared
+import spock.lang.Specification
+
 class OffsetTimeConverterSpec extends Specification implements OffsetTimeConverter {
 
     @Shared
     OffsetTime offsetTime
 
     void setupSpec() {
-        TimeZone.default = TimeZone.getTimeZone("America/Los_Angeles")
-        LocalTime localTime = LocalTime.of(6,5,4,3)
-        offsetTime = OffsetTime.of(localTime, ZoneOffset.ofHours(-6))
+        TimeZone.default = TimeZone.getTimeZone('America/Los_Angeles')
+        offsetTime = OffsetTime.of(
+                LocalTime.of(6,5,4,3),
+                ZoneOffset.ofHours(-6)
+        )
     }
 
-    void "test convert to long"() {
+    void 'test convert to long'() {
         expect:
         convert(offsetTime) == 43504000000003L
     }
 
-    void "test convert from long"() {
+    void 'test convert from long'() {
         given:
-        OffsetTime converted = convert(43504000000003L)
+        def converted = convert(43504000000003L)
 
         expect:
         converted == offsetTime.withOffsetSameInstant(ZoneOffset.ofHours(-7)) ||
                 converted == offsetTime.withOffsetSameInstant(ZoneOffset.ofHours(-8))
     }
 
-    void "test that all OffsetTimeConverter/TemporalConverter trait methods are marked as Generated"() {
-        expect: "all OffsetTimeConverter methods are marked as Generated on implementation class"
-        OffsetTimeConverter.getMethods().each { Method traitMethod ->
-            assert OffsetTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all OffsetTimeConverter/TemporalConverter trait methods are marked as Generated'() {
+
+        expect: 'all OffsetTimeConverter methods are marked as Generated on implementation class'
+        OffsetTimeConverter.methods.each { Method traitMethod ->
+            assert OffsetTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
 
-        and: "all TemporalConverter methods are marked as Generated on implementation class"
-        TemporalConverter.getMethods().each { Method traitMethod ->
-            assert OffsetTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+        and: 'all TemporalConverter methods are marked as Generated on implementation class'
+        TemporalConverter.methods.each { Method traitMethod ->
+            assert OffsetTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/time/PeriodConverterSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/time/PeriodConverterSpec.groovy
index cdb1fb5776..64051e9764 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/time/PeriodConverterSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/time/PeriodConverterSpec.groovy
@@ -18,13 +18,13 @@
  */
 package grails.gorm.time
 
-import spock.lang.Shared
-import spock.lang.Specification
+import java.lang.reflect.Method
+import java.time.Period
 
 import groovy.transform.Generated
 
-import java.lang.reflect.Method
-import java.time.Period
+import spock.lang.Shared
+import spock.lang.Specification
 
 class PeriodConverterSpec extends Specification implements PeriodConverter {
 
@@ -35,20 +35,21 @@ class PeriodConverterSpec extends Specification implements PeriodConverter {
         period = Period.of(1941, 1, 5)
     }
 
-    void "test convert to long"() {
+    void 'test convert to long'() {
         expect:
         convert(period) == 'P1941Y1M5D'
     }
 
-    void "test convert from long"() {
+    void 'test convert from long'() {
         expect:
         convert('P1941Y1M5D') == period
     }
 
-    void "test that all PeriodConverter trait methods are marked as Generated"() {
-        expect: "all PeriodConverter methods are marked as Generated on implementation class"
-        PeriodConverter.getMethods().each { Method traitMethod ->
-            assert PeriodConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all PeriodConverter trait methods are marked as Generated'() {
+
+        expect: 'all PeriodConverter methods are marked as Generated on implementation class'
+        PeriodConverter.methods.each { Method traitMethod ->
+            assert PeriodConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/grails/gorm/time/ZonedDateTimeConverterSpec.groovy b/grails-datamapping-core/src/test/groovy/grails/gorm/time/ZonedDateTimeConverterSpec.groovy
index 9f19b9fc7d..bb3dd5e5c4 100644
--- a/grails-datamapping-core/src/test/groovy/grails/gorm/time/ZonedDateTimeConverterSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/grails/gorm/time/ZonedDateTimeConverterSpec.groovy
@@ -18,13 +18,17 @@
  */
 package grails.gorm.time
 
-import spock.lang.Shared
-import spock.lang.Specification
+import java.lang.reflect.Method
+import java.time.LocalDate
+import java.time.LocalDateTime
+import java.time.LocalTime
+import java.time.ZoneOffset
+import java.time.ZonedDateTime
 
 import groovy.transform.Generated
 
-import java.lang.reflect.Method
-import java.time.*
+import spock.lang.Shared
+import spock.lang.Specification
 
 class ZonedDateTimeConverterSpec extends Specification implements ZonedDateTimeConverter {
 
@@ -33,34 +37,39 @@ class ZonedDateTimeConverterSpec extends Specification implements ZonedDateTimeC
 
     void setupSpec() {
         TimeZone.default = TimeZone.getTimeZone("America/Los_Angeles")
-        LocalTime localTime = LocalTime.of(6,5,4,3)
-        LocalDate localDate = LocalDate.of(1941, 1, 5)
-        LocalDateTime localDateTime = LocalDateTime.of(localDate, localTime)
-        zonedDateTime = ZonedDateTime.of(localDateTime, ZoneOffset.ofHours(-6))
+        zonedDateTime = ZonedDateTime.of(
+                LocalDateTime.of(
+                        LocalDate.of(1941, 1, 5),
+                        LocalTime.of(6,5,4,3)
+                ),
+                ZoneOffset.ofHours(-6)
+        )
     }
 
-    void "test convert to long"() {
+    void 'test convert to long'() {
         expect:
         convert(zonedDateTime) == -914759696000L
     }
 
-    void "test convert from long"() {
+    void 'test convert from long'() {
         given:
         ZonedDateTime converted = convert(-914759696000L)
 
         expect:
-        converted == zonedDateTime.withNano(0).withZoneSameInstant(ZoneOffset.ofHours(-7)) || converted == zonedDateTime.withNano(0).withZoneSameInstant(ZoneOffset.ofHours(-8))
+        converted == zonedDateTime.withNano(0).withZoneSameInstant(ZoneOffset.ofHours(-7)) ||
+                converted == zonedDateTime.withNano(0).withZoneSameInstant(ZoneOffset.ofHours(-8))
     }
 
-    void "test that all ZonedDateTimeConverter/TemporalConverter trait methods are marked as Generated"() {
-        expect: "all ZonedDateTimeConverter methods are marked as Generated on implementation class"
-        ZonedDateTimeConverter.getMethods().each { Method traitMethod ->
-            assert ZonedDateTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all ZonedDateTimeConverter/TemporalConverter trait methods are marked as Generated'() {
+
+        expect: 'all ZonedDateTimeConverter methods are marked as Generated on implementation class'
+        ZonedDateTimeConverter.methods.each { Method traitMethod ->
+            assert ZonedDateTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
 
-        and: "all TemporalConverter methods are marked as Generated on implementation class"
-        TemporalConverter.getMethods().each { Method traitMethod ->
-            assert ZonedDateTimeConverterSpec.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+        and: 'all TemporalConverter methods are marked as Generated on implementation class'
+        TemporalConverter.methods.each { Method traitMethod ->
+            assert ZonedDateTimeConverterSpec.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/EntityWithGenericSignaturesSpec.groovy b/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/EntityWithGenericSignaturesSpec.groovy
index 5fd385470a..157ab85faf 100644
--- a/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/EntityWithGenericSignaturesSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/EntityWithGenericSignaturesSpec.groovy
@@ -19,61 +19,55 @@
 package org.grails.compiler.gorm
 
 import groovy.transform.Generated
-import org.grails.datastore.mapping.keyvalue.mapping.config.KeyValueMappingContext
-import org.grails.datastore.mapping.keyvalue.mapping.config.KeyValuePersistentEntity
-import org.grails.datastore.mapping.model.MappingContext
-import org.grails.datastore.mapping.model.PersistentEntity
-import spock.lang.Specification
-
-/**
- * Created by graemerocher on 16/09/2016.
- */
-class EntityWithGenericSignaturesSpec extends Specification {
-
-    void "Test compile entity with generic signatures"() {
-
-        when:"An entity with generic signatures is compiled"
-        def gcl = new GroovyClassLoader()
-        Class cls = gcl.parseClass('''
-package test
 
-import grails.gorm.annotation.Entity
-import grails.gorm.dirty.checking.DirtyCheck
+import spock.lang.Specification
 
-@Entity
-class Widget<SettingType extends WidgetSetting> {
-    SettingType setting
+import org.grails.datastore.mapping.keyvalue.mapping.config.KeyValueMappingContext
 
-}
+class EntityWithGenericSignaturesSpec extends Specification {
 
-@Entity
-abstract class WidgetSetting {
-     String name
-}
+    void 'test compile entity with generic signatures'() {
 
-@Entity
-class HotWidgetSetting extends WidgetSetting {
-    Integer temperature
-}
-''')
+        when: 'an entity with generic signatures is compiled'
+        def cls = new GroovyClassLoader().parseClass('''
+            package test
+            
+            import grails.gorm.annotation.Entity
+            import grails.gorm.dirty.checking.DirtyCheck
+            
+            @Entity
+            class Widget<SettingType extends WidgetSetting> {
+                SettingType setting
+            
+            }
+            
+            @Entity
+            abstract class WidgetSetting {
+                 String name
+            }
+            
+            @Entity
+            class HotWidgetSetting extends WidgetSetting {
+                Integer temperature
+            }
+        ''')
 
-        then:"The entity is compiled correctly"
+        then: 'the entity is compiled correctly'
         cls.name == 'test.Widget'
-        cls.getMethod("getSetting").returnType.name == 'test.WidgetSetting'
+        cls.getMethod('getSetting').returnType.name == 'test.WidgetSetting'
 
 
-        when:"A mapping context is created"
-        MappingContext mappingContext = new KeyValueMappingContext("test")
-        PersistentEntity entity = mappingContext.addPersistentEntity(cls)
+        when: 'a mapping context is created'
+        def mappingContext = new KeyValueMappingContext('test')
+        def entity = mappingContext.addPersistentEntity(cls)
 
-        then:"The entity is has a setting property"
-        entity.getPropertyByName("setting")
-        entity.getPropertyByName("setting")
-        entity.getPropertyByName("setting").type.name == 'test.WidgetSetting'
+        then: 'the entity has a setting property'
+        entity.getPropertyByName('setting')
+        entity.getPropertyByName('setting').type.name == 'test.WidgetSetting'
 
-        and: "generated methods are marked as Generated"
-        cls.getMethod("getSetting").isAnnotationPresent(Generated)
-        cls.getMethod("getId").isAnnotationPresent(Generated)
-        cls.getMethod("getVersion").isAnnotationPresent(Generated)
+        and: 'generated methods are marked as Generated'
+        cls.getMethod('getSetting').isAnnotationPresent(Generated)
+        cls.getMethod('getId').isAnnotationPresent(Generated)
+        cls.getMethod('getVersion').isAnnotationPresent(Generated)
     }
 }
diff --git a/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/GormEntityTransformSpec.groovy b/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/GormEntityTransformSpec.groovy
index 2f6b97e797..3e1d65cfdd 100644
--- a/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/GormEntityTransformSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/GormEntityTransformSpec.groovy
@@ -18,48 +18,48 @@
  */
 package org.grails.compiler.gorm
 
-import grails.gorm.annotation.Entity
+import java.lang.reflect.Method
+
 import groovy.transform.Generated
 import org.codehaus.groovy.ast.ClassNode
+
+import spock.lang.Specification
+
+import grails.gorm.annotation.Entity
 import org.grails.datastore.gorm.GormEntity
 import org.grails.datastore.gorm.GormValidateable
 import org.grails.datastore.mapping.dirty.checking.DirtyCheckable
-import spock.lang.Specification
-
-import java.lang.reflect.Method
 
 /**
  * @author graemerocher
  */
 class GormEntityTransformSpec extends Specification{
 
-
-    void "test parse named queries"() {
-        def classLoader = new GroovyClassLoader()
+    void 'test parse named queries'() {
         when:
-        Class bookClass = classLoader.parseClass('''
-import grails.gorm.annotation.Entity
-@Entity
-class Book {
-    String title
-
-    static namedQueries = {
-        startsWithA {->
-            like 'title', 'A%'
-        }
-        
-        startsWithB {
-            like 'title', 'B%'
-        }
-        
-        startsWithLetter { String letter ->
-            like 'title', letter
-        }
-    }
-}
-
-
-''')
+        def bookClass = new GroovyClassLoader().parseClass('''
+            import grails.gorm.annotation.Entity
+
+            @Entity
+            class Book {
+            
+                String title
+            
+                static namedQueries = {
+                    startsWithA { ->
+                        like('title', 'A%')
+                    }
+                    
+                    startsWithB {
+                        like('title', 'B%')
+                    }
+                    
+                    startsWithLetter { String letter ->
+                        like('title', letter)
+                    }
+                }
+            }
+        ''')
 
         then:
         new ClassNode(bookClass).methods
@@ -68,7 +68,7 @@ class Book {
         bookClass.getMethod('getStartsWithB')
         bookClass.getMethod('startsWithB')
 
-        and: "they are all marked as Generated"
+        and: 'they are all marked as Generated'
         bookClass.getMethod('getStartsWithA').isAnnotationPresent(Generated)
         bookClass.getMethod('startsWithA').isAnnotationPresent(Generated)
         bookClass.getMethod('getStartsWithB').isAnnotationPresent(Generated)
@@ -76,107 +76,109 @@ class Book {
         bookClass.getMethod('startsWithLetter', String).isAnnotationPresent(Generated)
     }
 
-    void "test parse withTransaction usage in spock"() {
-            def classLoader = new GroovyClassLoader()
-            when:
-            Class bookClass = classLoader.parseClass('''
-import grails.gorm.annotation.Entity
-@Entity
-class Book {
-    String title
-
-    static constraints = {
-        title validator: { val ->
-            val.asBoolean()
-        }
-    }
-}
-
-
-''')
-            Class spockClass = classLoader.parseClass('''
-class HibernateSpecSpec extends spock.lang.Specification {
-
-    void setupSpec() {
-        Book.withTransaction {
-            new Book(title: "The Stand").save(flush:true)
-        }
-    }
-    void "test hibernate spec"() {
-        expect:
-        Book.count() == 1
-        !new Book().validate()
-        !new Book(title: "").validate()
-    }
-}
-
-''')
-
-        then:"The classes are valid"
+    void 'test parse withTransaction usage in spock'() {
+        when:
+        def classLoader = new GroovyClassLoader()
+        def bookClass = classLoader.parseClass('''
+            import grails.gorm.annotation.Entity
+            
+            @Entity
+            class Book {
+
+                String title
+            
+                static constraints = {
+                    title(validator: { val ->
+                        val.asBoolean()
+                    })
+                }
+            }
+        ''')
+        def spockClass = classLoader.parseClass('''
+            class HibernateSpecSpec extends spock.lang.Specification {
+            
+                void setupSpec() {
+                    Book.withTransaction {
+                        new Book(title: 'The Stand').save(flush: true)
+                    }
+                }
+            
+                void 'test hibernate spec'() {
+                    expect:
+                    Book.count() == 1
+                    !new Book().validate()
+                    !new Book(title: '').validate()
+                }
+            }
+        ''')
+
+        then: 'the classes are valid'
         new ClassNode(bookClass).methods
         new ClassNode(spockClass).methods
-
     }
 
-    void "Test parse abstract GORM entity with getters and setters"() {
+    void 'test parse abstract GORM entity with getters and setters'() {
         when:
         def cls = new GroovyClassLoader().parseClass('''
-import grails.gorm.annotation.Entity
-
-@Entity
-abstract class AbstractDomain {
-
-    abstract String getStringValue()
-    abstract void setStringValue(String value)
-
-}
-
-
-''')
-        then:"It is a valid class"
+            import grails.gorm.annotation.Entity
+            
+            @Entity
+            abstract class AbstractDomain {
+            
+                abstract String getStringValue()
+                abstract void setStringValue(String value)
+            
+            }
+        ''')
+
+        then: 'it is a valid class'
         new ClassNode(cls).methods
     }
 
-    void "Test parse GORM entity with single char properties"() {
-        when:"A gorm entity is parsed"
-        def cls = new GroovyClassLoader().parseClass('''
-import grails.gorm.annotation.Entity
-
-@Entity
-class Person {
-    String firstName
-    String lastName
-}
-
-@Entity
-class PersonLink {
-    Person a
-    Person b
+    void 'test parse GORM entity with single char properties'() {
 
-    String toString() {
-        "$a -> $b"
-    }
-}
-''')
-        then:"It is a valid class"
+        when: 'a gorm entity is parsed'
+        def cls = new GroovyClassLoader().parseClass('''
+            import grails.gorm.annotation.Entity
+            
+            @Entity
+            class Person {
+                String firstName
+                String lastName
+            }
+            
+            @Entity
+            class PersonLink {
+                Person a
+                Person b
+
+                String toString() {
+                    "$a -> $b"
+                }
+            }
+        ''')
+
+        then: 'it is a valid class'
         new ClassNode(cls).methods
     }
 
-    void "Test parse GORM entity"() {
-        when:"A gorm entity is parsed"
-        def cls = new GroovyClassLoader().parseClass('''
-import grails.gorm.annotation.Entity
+    void 'test parse GORM entity'() {
 
-@Entity
-class Foo {
-    String name
-}
-''')
-        then:"It is a valid class"
+        when: 'a gorm entity is parsed'
+        def cls = new GroovyClassLoader().parseClass('''
+            import grails.gorm.annotation.Entity
+            
+            @Entity
+            class Foo {
+                String name
+            }
+        ''')
+
+        then: 'it is a valid class'
         new ClassNode(cls).methods
     }
 
-    void "Test GORM entity transformation implements"() {
+    void 'test GORM entity transformation implements'() {
         expect:
         GormEntity.isAssignableFrom(Book)
         GormValidateable.isAssignableFrom(Book)
@@ -184,53 +186,57 @@ class Foo {
         Book.getAnnotation(Entity)
         new Author().respondsTo('addToBooks', Book)
         new Book().hasProperty('authorId')
-
         Author.getDeclaredMethod('addToBooks', Object).isAnnotationPresent(Generated)
         Author.getDeclaredMethod('removeFromBooks', Object).isAnnotationPresent(Generated)
         Author.getDeclaredMethod('setBooks', Set).isAnnotationPresent(Generated)
         Author.getDeclaredMethod('getBooks').isAnnotationPresent(Generated)
-
         Book.getDeclaredMethod('getAuthorId').isAnnotationPresent(Generated)
     }
 
-    void "Test property/method missing"() {
-
+    void 'test property/method missing'() {
         when:
         Book.foo()
+
         then:
-        thrown IllegalStateException
+        thrown(IllegalStateException)
+
         when:
-        def var = Book.bar
+        Book.bar
+
         then:
         Book.getDeclaredMethod('$static_propertyMissing', String)
         Book.getDeclaredMethod('$static_propertyMissing', String).isAnnotationPresent(Generated)
-        thrown MissingPropertyException
+        thrown(MissingPropertyException)
+
         when:
         Book.bar = 'blah'
+
         then:
         Book.getDeclaredMethod('$static_propertyMissing', String, Object)
         Book.getDeclaredMethod('$static_propertyMissing', String, Object).isAnnotationPresent(Generated)
-        thrown MissingPropertyException
+        thrown(MissingPropertyException)
     }
 
-    void "test that all GormEntity/GormValidateable trait methods are marked as Generated"() {
-        expect: "all GormEntity methods are marked as Generated on implementation class"
-        GormEntity.getMethods().each { Method traitMethod ->
-            assert Book.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all GormEntity/GormValidateable trait methods are marked as Generated'() {
+
+        expect: 'all GormEntity methods are marked as Generated on implementation class'
+        GormEntity.methods.each { Method traitMethod ->
+            assert Book.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
 
-        and: "all GormValidateable methods are marked as Generated on implementation class"
-        GormValidateable.getMethods().each { Method traitMethod ->
-            assert Book.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+        and: 'all GormValidateable methods are marked as Generated on implementation class'
+        GormValidateable.methods.each { Method traitMethod ->
+            assert Book.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 
-    void "test that all DirtyCheckingTransformer added methods are marked as Generated"() {
-        expect: "added getId and getVersion methods are marked"
+    void 'test that all DirtyCheckingTransformer added methods are marked as Generated'() {
+
+        expect: 'added getId and getVersion methods are marked'
         Book.getMethod('getId').isAnnotationPresent(Generated)
         Book.getMethod('getVersion').isAnnotationPresent(Generated)
 
-        and: "getter and setter methods are marked"
+        and: 'getter and setter methods are marked'
         Book.getMethod('getTitle').isAnnotationPresent(Generated)
         Book.getMethod('setTitle', String).isAnnotationPresent(Generated)
         Book.getMethod('getAuthor').isAnnotationPresent(Generated)
@@ -241,7 +247,6 @@ class Foo {
 @Entity
 class Book {
     String title
-
     static belongsTo = [author:Author]
 }
 
diff --git a/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/JpaEntityTransformSpec.groovy b/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/JpaEntityTransformSpec.groovy
index 897bfd6345..2c693d43b5 100644
--- a/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/JpaEntityTransformSpec.groovy
+++ b/grails-datamapping-core/src/test/groovy/org/grails/compiler/gorm/JpaEntityTransformSpec.groovy
@@ -19,52 +19,53 @@
 package org.grails.compiler.gorm
 
 import groovy.transform.Generated
-import org.grails.datastore.gorm.GormEntity
-import org.grails.datastore.mapping.model.config.GormProperties
-import org.grails.datastore.mapping.reflect.ClassPropertyFetcher
-import org.springframework.validation.annotation.Validated
-import spock.lang.Specification
 
 import jakarta.persistence.Transient
 
+import spock.lang.Specification
+
+import org.springframework.validation.annotation.Validated
+
+import org.grails.datastore.gorm.GormEntity
+import org.grails.datastore.mapping.model.config.GormProperties
+import org.grails.datastore.mapping.reflect.ClassPropertyFetcher
 
-/**
- * Created by graemerocher on 22/12/16.
- */
 class JpaEntityTransformSpec extends Specification {
 
-    void "test the JPA entity transform the entity correctly"() {
+    void 'test the JPA entity transform the entity correctly'() {
         given:
-        GroovyClassLoader gcl = new GroovyClassLoader()
-        Class customerClass = gcl.parseClass('''
-import jakarta.persistence.*
-import jakarta.validation.constraints.Digits
-@Entity
-class Customer {
+        def customerClass = new GroovyClassLoader().parseClass('''
+            import jakarta.persistence.*
+            import jakarta.validation.constraints.Digits
 
-    @Id
-    @GeneratedValue(strategy=GenerationType.AUTO)
-    Long myId
-    @Digits
-    String firstName;
-    String lastName;
-    
-    @jakarta.persistence.OneToMany
-    Set<Customer> related
+            @Entity
+            class Customer {
 
-}
+                @Id
+                @GeneratedValue(strategy=GenerationType.AUTO)
+                Long myId
 
-''')
-        ClassPropertyFetcher cpf = ClassPropertyFetcher.forClass(customerClass)
-        def instance = customerClass.newInstance()
+                @Digits
+                String firstName
+
+                String lastName
+
+                @jakarta.persistence.OneToMany
+                Set<Customer> related
+
+            }
+        ''')
+        def cpf = ClassPropertyFetcher.forClass(customerClass)
+        def instance = customerClass.getDeclaredConstructor().newInstance()
         instance.myId = 1L
+
         expect:
         instance.id == 1L
         GormEntity.isAssignableFrom(customerClass)
         customerClass.getAnnotation(Validated)
-        customerClass.getDeclaredMethod("getId").returnType == Long
-        customerClass.getDeclaredMethod("getId").getAnnotation(Transient)
-        customerClass.getDeclaredMethod("getId").isAnnotationPresent(Generated)
+        customerClass.getDeclaredMethod('getId').returnType == Long
+        customerClass.getDeclaredMethod('getId').getAnnotation(Transient)
+        customerClass.getDeclaredMethod('getId').isAnnotationPresent(Generated)
         cpf.getPropertyDescriptor(GormProperties.IDENTITY)
         customerClass.getDeclaredMethod('addToRelated', Object)
         customerClass.getDeclaredMethod('addToRelated', Object).isAnnotationPresent(Generated)
diff --git a/grails-datamapping-rx/src/main/groovy/grails/gorm/rx/MultiTenant.groovy b/grails-datamapping-rx/src/main/groovy/grails/gorm/rx/MultiTenant.groovy
index 1bc2181bd9..77429be4ee 100644
--- a/grails-datamapping-rx/src/main/groovy/grails/gorm/rx/MultiTenant.groovy
+++ b/grails-datamapping-rx/src/main/groovy/grails/gorm/rx/MultiTenant.groovy
@@ -19,11 +19,11 @@
 
 package grails.gorm.rx
 
-import grails.gorm.api.GormAllOperations
-import grails.gorm.rx.api.RxGormAllOperations
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
-import org.grails.datastore.gorm.GormEnhancer
+
+import grails.gorm.api.GormAllOperations
+import grails.gorm.rx.api.RxGormAllOperations
 import org.grails.datastore.mapping.core.connections.ConnectionSource
 import org.grails.gorm.rx.api.RxGormEnhancer
 
@@ -35,6 +35,7 @@ import org.grails.gorm.rx.api.RxGormEnhancer
  */
 @CompileStatic
 trait MultiTenant<D> extends RxEntity<D> {
+
     /**
      * Execute the closure with the given tenantId
      *
diff --git a/grails-datamapping-rx/src/main/groovy/grails/gorm/rx/RxEntity.groovy b/grails-datamapping-rx/src/main/groovy/grails/gorm/rx/RxEntity.groovy
index e5c572fd50..96bb1c6713 100644
--- a/grails-datamapping-rx/src/main/groovy/grails/gorm/rx/RxEntity.groovy
+++ b/grails-datamapping-rx/src/main/groovy/grails/gorm/rx/RxEntity.groovy
@@ -19,13 +19,15 @@
 
 package grails.gorm.rx
 
+import groovy.transform.CompileStatic
+import groovy.transform.Generated
+
+import rx.Subscriber
+
 import grails.gorm.rx.api.RxGormAllOperations
-import grails.gorm.rx.api.RxGormInstanceOperations
 import grails.gorm.rx.api.RxGormOperations
 import grails.gorm.rx.api.RxGormStaticOperations
 import grails.gorm.rx.proxy.ObservableProxy
-import groovy.transform.CompileStatic
-import groovy.transform.Generated
 import org.grails.datastore.gorm.GormValidateable
 import org.grails.datastore.gorm.finders.FinderMethod
 import org.grails.datastore.mapping.dirty.checking.DirtyCheckable
@@ -41,8 +43,6 @@ import org.grails.datastore.mapping.validation.ValidationException
 import org.grails.gorm.rx.api.RxGormEnhancer
 import org.grails.gorm.rx.api.RxGormInstanceApi
 import org.grails.gorm.rx.api.RxGormStaticApi
-import rx.Observable
-import rx.Subscriber
 
 /**
  * Represents a reactive GORM entity
@@ -54,26 +54,27 @@ import rx.Subscriber
  */
 @CompileStatic
 trait RxEntity<D> implements RxGormOperations<D>, GormValidateable, DirtyCheckable, Serializable {
-    @Generated
+
     @Override
+    @Generated
     boolean validate(Map arguments) {
         RxGormEnhancer.findValidationApi((Class<D>)getClass()).validate((D)this, arguments)
     }
 
-    @Generated
     @Override
+    @Generated
     boolean validate(List fields) {
         RxGormEnhancer.findValidationApi((Class<D>)getClass()).validate((D)this, fields)
     }
 
-    @Generated
     @Override
+    @Generated
     boolean validate() {
         RxGormEnhancer.findValidationApi((Class<D>)getClass()).validate((D)this)
     }
 
-    @Generated
     @Override
+    @Generated
     Observable<D> insert(Map arguments = Collections.emptyMap()) {
         return doSave(arguments, true)
     }
diff --git a/grails-datamapping-rx/src/main/groovy/org/grails/datastore/rx/collection/RxCollection.groovy b/grails-datamapping-rx/src/main/groovy/org/grails/datastore/rx/collection/RxCollection.groovy
index 4a9dbb631e..08dc2bef28 100644
--- a/grails-datamapping-rx/src/main/groovy/org/grails/datastore/rx/collection/RxCollection.groovy
+++ b/grails-datamapping-rx/src/main/groovy/org/grails/datastore/rx/collection/RxCollection.groovy
@@ -18,13 +18,15 @@
  */
 package org.grails.datastore.rx.collection
 
-import grails.gorm.rx.collection.ObservableCollection
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
+
 import rx.Observable
 import rx.Subscriber
 import rx.Subscription
 
+import grails.gorm.rx.collection.ObservableCollection
+
 /**
  * A trait that can be implemented by collection types to make them observable
  *
diff --git a/grails-datastore-async/src/main/groovy/org/grails/datastore/gorm/async/transform/DelegateAsyncTransformation.java b/grails-datastore-async/src/main/groovy/org/grails/datastore/gorm/async/transform/DelegateAsyncTransformation.java
index 1d2083a1ac..11e20dbad3 100644
--- a/grails-datastore-async/src/main/groovy/org/grails/datastore/gorm/async/transform/DelegateAsyncTransformation.java
+++ b/grails-datastore-async/src/main/groovy/org/grails/datastore/gorm/async/transform/DelegateAsyncTransformation.java
@@ -164,7 +164,6 @@ public class DelegateAsyncTransformation implements ASTTransformation, Transform
                     MethodCallExpression delegateMethodCall = new MethodCallExpression(new VariableExpression(fieldName), candidate.getName(), arguments);
                     promiseBody.addStatement(new ExpressionStatement(delegateMethodCall));
                     MethodNode newMethodNode = new MethodNode(candidate.getName(), Modifier.PUBLIC, promiseNode, parameters, null, methodBody);
-
                     markAsGenerated(classNode, newMethodNode);
                     classNode.addMethod(newMethodNode);
                 }
diff --git a/grails-datastore-async/src/test/groovy/org/grails/datastore/gorm/async/transform/DelegateAsyncSpec.groovy b/grails-datastore-async/src/test/groovy/org/grails/datastore/gorm/async/transform/DelegateAsyncSpec.groovy
index e88b657f78..2347da7cf0 100644
--- a/grails-datastore-async/src/test/groovy/org/grails/datastore/gorm/async/transform/DelegateAsyncSpec.groovy
+++ b/grails-datastore-async/src/test/groovy/org/grails/datastore/gorm/async/transform/DelegateAsyncSpec.groovy
@@ -18,40 +18,41 @@
  */
 package org.grails.datastore.gorm.async.transform
 
-import grails.async.Promise
+import java.lang.reflect.Method
+
 import groovy.transform.Generated
 import org.codehaus.groovy.ast.ClassNode
+
 import spock.lang.Specification
 
-import java.lang.reflect.Method
+import grails.async.Promise
 
 /**
  * Created by graemerocher on 01/07/16.
  */
 class DelegateAsyncSpec extends Specification {
 
-    void "Test DelegateAsync with parameterized return types"() {
-        given:"a class with parameterized return types"
-        GroovyClassLoader gcl = new GroovyClassLoader()
-        def cls = gcl.parseClass('''
-import org.grails.datastore.gorm.async.transform.*
-class Bar<D>{
-    @DelegateAsync Foo<D> foo
-}
-interface Foo<D> {
-    public <T> T  withTransaction(Closure<T> callable)
-}
-
-
-''')
-        expect:"The method is retrieved"
+    void 'test DelegateAsync with parameterized return types'() {
+
+        given: 'a class with parameterized return types'
+        def cls = new GroovyClassLoader().parseClass('''
+            import org.grails.datastore.gorm.async.transform.*
+            class Bar<D> {
+                @DelegateAsync Foo<D> foo
+            }
+            
+            interface Foo<D> {
+                public <T> T  withTransaction(Closure<T> callable)
+            }
+        ''')
+
+        expect: 'the method is retrieved'
         new ClassNode(cls).methods
 
-        Method method = cls.getMethod("withTransaction", Closure)
-        Promise.isAssignableFrom( method.returnType )
+        def method = cls.getMethod('withTransaction', Closure)
+        Promise.isAssignableFrom(method.returnType)
 
         and: 'marked as Generated'
         method.isAnnotationPresent(Generated)
     }
-
 }
diff --git a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckable.groovy b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckable.groovy
index 5b4fffcbca..e0cbccbbf4 100644
--- a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckable.groovy
+++ b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckable.groovy
@@ -21,6 +21,7 @@ package org.grails.datastore.mapping.dirty.checking
 
 import groovy.transform.CompileStatic
 import groovy.transform.Generated
+
 import jakarta.persistence.Transient
 
 import org.grails.datastore.mapping.proxy.EntityProxy
diff --git a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/services/Service.groovy b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/services/Service.groovy
index 969299ec89..337718115b 100644
--- a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/services/Service.groovy
+++ b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/services/Service.groovy
@@ -19,6 +19,7 @@
 package org.grails.datastore.mapping.services
 
 import groovy.transform.Generated
+
 import org.grails.datastore.mapping.core.Datastore
 
 /**
diff --git a/grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckableSpec.groovy b/grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckableSpec.groovy
index e1cc92e860..656ca41c89 100644
--- a/grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckableSpec.groovy
+++ b/grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/dirty/checking/DirtyCheckableSpec.groovy
@@ -18,17 +18,19 @@
  */
 package org.grails.datastore.mapping.dirty.checking
 
-import groovy.transform.Sortable
+import java.lang.reflect.Method
+
 import groovy.transform.Generated
+import groovy.transform.Sortable
+
 import spock.lang.Issue
 import spock.lang.Specification
 
-import java.lang.reflect.Method
-
 class DirtyCheckableSpec extends Specification {
 
     @Issue('https://github.com/apache/grails-data-mapping/issues/1231')
     def 'setting a field that implements Comparable dirty checks properly'() {
+
         given: 'a person'
         def person = new Person(name: 'John Doe')
 
@@ -55,35 +57,37 @@ class DirtyCheckableSpec extends Specification {
     }
 
     def 'setting a field that is a boolean dirty checks properly'() {
+
         given: 'a class with a boolean property'
         def animal = new Animal()
         animal.trackChanges()
 
-        when:"A boolean property is changed"
+        when: 'a boolean property is changed'
         animal.barks = true
-        animal.markDirty("barks", true, false)
+        animal.markDirty('barks', true, false)
 
-        then:"the property changed"
+        then: 'the property changed'
         animal.barks
         animal.hasChanged()
-        animal.hasChanged("barks")
+        animal.hasChanged('barks')
 
-        when:"it is set to false"
+        when: 'it is set to false'
         animal.trackChanges() // reset
         animal.barks = false
-        animal.markDirty("barks", false, true)
+        animal.markDirty('barks', false, true)
 
-        then:"the property changed"
+        then: 'the property changed'
         !animal.barks
         animal.hasChanged()
-        animal.hasChanged("barks")
+        animal.hasChanged('barks')
 
     }
 
-    void "test that all DirtyCheckable trait methods are marked as Generated"() {
-        expect: "all DirtyCheckable methods are marked as Generated on implementation class"
-        DirtyCheckable.getMethods().each { Method traitMethod ->
-            assert Animal.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all DirtyCheckable trait methods are marked as Generated'() {
+
+        expect: 'all DirtyCheckable methods are marked as Generated on implementation class'
+        DirtyCheckable.methods.each { Method traitMethod ->
+            assert Animal.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
diff --git a/grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/services/DefaultServiceRegistrySpec.groovy b/grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/services/DefaultServiceRegistrySpec.groovy
index 83e9feeb2d..16f6864bc3 100644
--- a/grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/services/DefaultServiceRegistrySpec.groovy
+++ b/grails-datastore-core/src/test/groovy/org/grails/datastore/mapping/services/DefaultServiceRegistrySpec.groovy
@@ -18,24 +18,23 @@
  */
 package org.grails.datastore.mapping.services
 
+import java.lang.reflect.Method
+
 import groovy.transform.Generated
-import org.grails.datastore.mapping.core.Datastore
-import org.grails.datastore.mapping.dirty.checking.DirtyCheckable
+
 import spock.lang.Specification
 
-import java.lang.reflect.Method
+import org.grails.datastore.mapping.core.Datastore
 
-/**
- * Created by graemerocher on 11/01/2017.
- */
 class DefaultServiceRegistrySpec extends Specification {
 
-    void "test load services into service registry"() {
+    void 'test load services into service registry'() {
         given:
-        ServiceRegistry reg = new DefaultServiceRegistry(Mock(Datastore))
+        def reg = new DefaultServiceRegistry(Mock(Datastore))
         reg.initialize()
-        ServiceRegistry reg2 = new DefaultServiceRegistry(Mock(Datastore))
+        def reg2 = new DefaultServiceRegistry(Mock(Datastore))
         reg2.initialize()
+
         expect:
         reg.getService(TestService) != null
         reg.getService(TestService).datastore != null
@@ -45,14 +44,15 @@ class DefaultServiceRegistrySpec extends Specification {
         reg.getService(TestService).datastore != reg2.getService(TestService).datastore
     }
 
-    void "test that all Service trait methods are marked as Generated"() {
-        expect: "all Service methods are marked as Generated on implementation class"
-        Service.getMethods().each { Method traitMethod ->
-            assert TestService.class.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
+    void 'test that all Service trait methods are marked as Generated'() {
+
+        expect: 'all Service methods are marked as Generated on implementation class'
+        Service.methods.each { Method traitMethod ->
+            assert TestService.getMethod(traitMethod.name, traitMethod.parameterTypes).isAnnotationPresent(Generated)
         }
     }
 }
 
-class TestService implements Service, ITestService {
-}
+class TestService implements Service, ITestService {}
+
 interface ITestService {}