Skip to content

Step 1 (PR-C): Add addAllDomainClasses helper to GrailsDataTckManager#15683

Open
jamesfredley wants to merge 1 commit into
8.0.xfrom
refactor/tck-add-all-domain-classes
Open

Step 1 (PR-C): Add addAllDomainClasses helper to GrailsDataTckManager#15683
jamesfredley wants to merge 1 commit into
8.0.xfrom
refactor/tck-add-all-domain-classes

Conversation

@jamesfredley
Copy link
Copy Markdown
Contributor

Step 1 (PR-C) prerequisite for Hibernate 7 work - extracted from the staging branch so it can be reviewed on its own merits.

Context

This change was originally pulled forward into the hibernate7 staging branch as commit ed0916dd93 on PR #15654. Reviewers (@matrei, @sbglasius) correctly pointed out it is unrelated to the Hibernate 7 clone and should be a standalone PR. Extracting it here against 8.0.x so it can land on its own and then flow naturally into both the staging branch (PR #15654) and Step 2 (PR #15568).

Scope

Adds a small helper method to GrailsDataTckManager and mechanically replaces all callers:

// before
manager.domainClasses.addAll([Foo, Bar])

// after
manager.addAllDomainClasses([Foo, Bar])

The helper hides the implementation detail that domainClasses is a mutable list field, and reads more naturally at the call site.

Files changed

182 files total - the method definition + 181 call sites:

Location Count
grails-datamapping-tck/src/main/... 13 specs + 1 manager (with new method)
grails-datamapping-core-test/src/test/... 49 core test specs
grails-data-hibernate5/core/src/test/... 27 hibernate5 specs
grails-data-mongodb/core/src/test/... 92 mongo specs

The change is purely mechanical - I verified a sample of files diff identically to commit ed0916dd93 on the staging branch.

Why a separate PR

PR #15654 (Step 1) is meant to be a near-pure clone of hibernate5hibernate7. PR #15568 (Step 2) is the actual Hibernate 7 logic. Both reviewers asked for cleanup of this nature to be split out so the review effort on Step 1 and Step 2 can stay focused on hibernate-related diffs.

Once this PR is merged, the corresponding "Pull forward manager.addAllDomainClasses change" commit on the hibernate7 staging branch should be removed since the change will arrive through the next merge of 8.0.x.

Related

Note on MongoDatastoreSpec base class

The companion change on the staging branch (commit c8cb43f2ec - introducing MongoDatastoreSpec as a thin base class to reduce generic noise across 108 mongo specs) was not included in this PR because it depends on a separate tests/specs/ package rename that hasn't been applied to 8.0.x. That refactor can be a follow-up PR or stay in the staging branch since @sbglasius's review comment on it was conditional ("if needed, ok").

…cross TCK specs

Introduces a small helper method on the TCK base manager that replaces
the slightly awkward `manager.domainClasses.addAll([...])` pattern with
`manager.addAllDomainClasses([...])`. The implementation is one line
that delegates to the existing list mutation.

Mechanically replaces all 181 callers across:
- grails-datamapping-tck/src/main/... (13 TCK base specs + 1 manager method definition)
- grails-datamapping-core-test/src/test/... (49 core test specs)
- grails-data-hibernate5/core/src/test/... (27 hibernate5 specs)
- grails-data-mongodb/core/src/test/... (92 mongo specs)

182 files changed total: the helper method definition plus 181 call sites.

The previous form required the caller to know that `domainClasses` was a
mutable list on the manager, which leaked an implementation detail. The
helper hides the field access and makes the call site read more naturally.

This change was originally pulled forward into the hibernate7 staging
branch (PR #15654 commit ed0916d) and was flagged by reviewers as
unrelated to the Hibernate 7 clone. Extracting it here so it can land
on 8.0.x on its own merits as a prerequisite for the Hibernate 7 work.

Once merged here, the corresponding "Pull forward manager.addAllDomainClasses
change" commit on the hibernate7 staging branch should be removed since
it will arrive through the next merge of 8.0.x.

Assisted-by: claude-code:claude-4.7-opus
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a small convenience API to GrailsDataTckManager for registering domain classes in TCK-based specs, then mechanically updates specs across the data-mapping, Hibernate 5, and MongoDB test suites to use the helper instead of mutating manager.domainClasses directly.

Changes:

  • Add GrailsDataTckManager#addAllDomainClasses(Collection<Class>) helper.
  • Replace manager.domainClasses.addAll(...) with manager.addAllDomainClasses(...) across affected specs.

Reviewed changes

Copilot reviewed 182 out of 182 changed files in this pull request and generated no comments.

Show a summary per file
File Description
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/base/GrailsDataTckManager.groovy Add addAllDomainClasses(Collection<Class>) helper wrapping domainClasses.addAll(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/BuiltinUniqueConstraintWorksWithTargetProxiesConstraintsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/ConstraintsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/DirtyCheckingAfterListenerSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/DirtyCheckingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/DisableAutotimeStampSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/FirstAndLastMethodSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/PersistenceEventListenerSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/PropertyComparisonQuerySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/ProxyInitializationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/QueryEventsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/UniqueConstraintSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/UpdateWithProxyPresentSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/WhereLazySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/AbstractNonGormParentClassSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/CircularCascadeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/DetachedCriteriaAssociationQuerySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/TransactionalTransformOnServiceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/WhereMethodSpec.groovy Switch to manager.addAllDomainClasses(...) (including list variable case).
grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/validation/ArrayMaxSizeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/AddToAndInjectedServiceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/AddToMethodWithBasicCollectionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/AddToMethodWithEmbeddedCollectionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/AssignedIdentifierSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/AutoLinkOneToManyAssociationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/BasicTypeHasManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/BeforeUpdateEventSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/BidirectionalOneToManyWithInheritanceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CacheAndJoinSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CircularManyToManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CircularManyToOneSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CircularOneToManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CompositeIdentifierSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CriteriaProjectedResultsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CustomAutoTimestampSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CustomSequenceIdentifierSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CustomStringIdentifierSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/CustomTypeMarshallingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/DeindexingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/DetachedCriteriaJpaEntitySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/DirtyCheckingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/DomainWithPrimitiveGetterSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/DynamicFinderHungarianNotationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/EmbeddedAssociationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/EmbeddedNonEntityAssociationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/EnumHasManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/FindByDomainInListSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/GormDirtyCheckingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/HasManyDefaultMappedBySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/HasOneSetInverseSideSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/InOperatorWithAssociationsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/InheritanceWithOneToManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/ListOrderByHungarianNotationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/ManyToManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/MappedByNoneSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/NestedAssociationQuerySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/NotNullQuerySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/QueryNonIndexedPropertySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/ReadOnlyCriteriaResultsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/SaveWithFailOnErrorDefaultSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/UUIDTypeIdentifierSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/gorm/UUIIdentifierSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-datamapping-core-test/src/test/groovy/org/grails/datastore/mapping/EntityReflectorSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/hibernate/mapping/HibernateOptimisticLockingStyleMappingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/AutoTimestampSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/CascadeToBidirectionalAsssociationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/CountByWithEmbeddedSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/DeleteAllWhereSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/DetachCriteriaSubquerySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/DetachedCriteriaJoinSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/DomainGetterSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/EnumMappingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/LastUpdateWithDynamicUpdateSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/ManyToOneSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/MultiColumnUniqueConstraintSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/RLikeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/ReadOperationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/SizeConstraintSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/ToOneProxySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/WhereQueryWithAssociationSortSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/WithNewSessionAndExistingTransactionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/autoimport/AutoImportSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/belongsto/BidirectionalOneToOneWithUniqueSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/inheritance/SubclassToOneProxySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/inheritance/TablePerConcreteClassAndDateCreatedSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/inheritance/TablePerConcreteClassImportedSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/mappedby/MultipleOneToOneSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/proxy/ByteBuddyProxySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/traits/InterfacePropertySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/validation/DeepValidationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/grails/gorm/tests/DirtyCheckEmbeddedCollectionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/grails/gorm/tests/FindNativeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/grails/gorm/tests/listener/PersistenceEventListenerSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/grails/mongodb/cascade/MongoCascadeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/AggregateMethodSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/AssignedIdentifierSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/AutowireServicesSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BasicArraySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BasicCollectionTypeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BasicCollectionsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BatchUpdateDeleteSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BeforeInsertUpdateSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BeforeUpdatePropertyPersistenceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BigDecimalSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/BrokenManyToManyAssociationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CascadeDeleteOneToOneSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CascadeDeleteSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CircularBidirectionalOneToManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CircularEmbeddedListSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CircularOneToManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/ClearCollectionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CustomCollectionAndAttributeMappingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CustomIdProxySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CustomMongoEventListenerSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/CustomTypeMarshallingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/DBObjectConversionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/DbRefWithEmbeddedSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/DefaultSortOrderSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/DirtyCheckUpdateSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/DisableVersionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/DistinctPropertySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/DocumentMappingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedAssociationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedBiDirectionalSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedCollectionAndInheritanceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedCollectionWithIdSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedCollectionWithOneToOneSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedListWithCustomTypeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedMapSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedSetAssignedIdSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedSimpleObjectSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedStringListInsideEmbeddedCollectionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedUnsetSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedWhereClauseSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedWithCustomFieldMappingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedWithNonEmbeddedAssociationsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedWithNonEmbeddedCollectionsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EmbeddedWithinEmbeddedAssociationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EnumCollectionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EnumTypeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/EventsWithAbstractInheritanceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/FindOrCreateWhereSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/GeoJSONTypePersistenceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/GeospacialQuerySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/GetAllWithStringIdSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/GreaterThanAndLessThanCriteriaSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/HasOneSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/IndexAttributesAndCompoundKeySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/IndexWithInheritanceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/InheritanceQueryingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/InheritanceWithSingleEndedAssociationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/InnerEnumSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/IsNullSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/JakartaValidationSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/LastUpdatedSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/ListOneToManyOrderingSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/MapOfDomainsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/MarkDirtyFalseSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/MongoDynamicPropertyOnEmbeddedSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/MongoGormEnhancerSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/MongoTypesSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/NegationEnumSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/NullsAreNotStoredSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/ObjectIdPersistenceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/ObjectIdPropertySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/OneToManyWithInheritanceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/OneToOneNoReferenceSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/OptimisticLockingWithExceptionSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/ProjectionsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/QueriesWithIdenticallyNamedPartsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/ReadManyObjectsSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/SetRetrievalSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/SimpleHasManySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/SingleEmbeddedAssignNullToNonNullSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/StatelessSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/SwitchDatabaseAtRuntimeSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/TestSearchSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/TransientPropertySpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/WhereQueryInCriteriaSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/WriteConcernSpec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/bugs/GPMongoDB295Spec.groovy Switch to manager.addAllDomainClasses(...).
grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/bugs/StringIdWithObjectIdStorageSpec.groovy Switch to manager.addAllDomainClasses(...).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

jamesfredley added a commit that referenced this pull request May 28, 2026
This commit reverts the portions of this branch that have been split out
into standalone PRs against 8.0.x. The goal is to shrink the PR-A
review surface to focus on the actual hibernate5 -> hibernate7 clone
and let the unrelated cleanups be reviewed on their own merits.

Once PRs B/C/D/E land on 8.0.x and 8.0.x is merged into this branch,
the reverted changes will arrive through the merge so the final state
of stage-hibernate7 is unchanged - only the diff visible on this PR
is reduced.

Reverted content:

  Async defensive cleanup (PR #15682, PR-B)
    9 files in grails-async/. Reverts e3cad41. Null-safety guards,
    @OverRide annotations, catch(Exception ignored) over catch(Throwable),
    constant-on-left equality, varargs.

  addAllDomainClasses helper + adoption (PR #15683, PR-C)
    Helper method on GrailsDataTckManager plus all callers across the
    data mapping test suites. Reverts ed0916d plus all orphan
    callers added by subsequent commits (50 specs) so the branch
    compiles without the helper method.

  MongoDatastoreSpec base class + mongo package rename (PR #15685, PR-E)
    Reverts c8cb43f (MongoDatastoreSpec introduction + ~107 spec
    refactors) and the mongo portion of 01c27f9 (8 file renames
    grails.gorm.tests -> grails.gorm.specs plus 18 import-update
    modifications in non-renamed mongo specs).

  DetachedCriteriaSpec command-chain syntax (PR #15684, PR-D)
    18 `eq(...)` and `like(...)` parens restorations in the TCK
    DetachedCriteriaSpec. Reverts the parens hunk of ee4ab14 while
    leaving the rest of that commit (setupSpec addition, import
    reorder, and the other 35 TCK file changes) intact.

NOT reverted (intentionally kept in PR-A):

  - The hibernate5 -> hibernate7 baseline clone (~100k lines, the
    actual work being reviewed)
  - 89 hibernate5 and 90 hibernate7 grails.gorm.tests -> grails.gorm.specs
    package renames (non-mongo portion of 01c27f9, since these
    touch the cloned tests and reverting would require re-doing both
    sides)
  - 18 grails-datamapping-core-test package renames (non-mongo portion
    of 01c27f9)
  - All other "Pull forward..." commits (styling, build config,
    test additions, etc.) which the reviewers have not specifically
    objected to

Assisted-by: claude-code:claude-4.7-opus
jamesfredley added a commit that referenced this pull request May 28, 2026
16 mongo specs in this PR called manager.addAllDomainClasses(...), a
helper method that does not exist on 8.0.x. The helper is introduced
by a sibling PR (#15683, the GrailsDataTckManager helper extraction)
that this PR does not depend on.

The setupSpec calls were inherited from the staging branch where both
changes already coexisted. On 8.0.x in isolation, the helper method
is undefined and the specs would throw MissingMethodException at
runtime.

Converting all 16 callers to the existing manager.domainClasses.addAll
pattern so this PR is self-contained against 8.0.x. After both this
PR and #15683 land, the callers can be optionally converted to use
the helper in a follow-up (or naturally via the next merge of 8.0.x
into the staging branch), but that is not a prerequisite for this PR.

Files updated:
- DisjunctionQuerySpec.groovy
- EmbeddedHasManyWithBeforeUpdateSpec.groovy
- EmbeddedWithIdSpecifiedSpec.groovy
- GetAllSpec.groovy
- HintQueryArgumentSpec.groovy
- InListQuerySpec.groovy
- LikeQuerySpec.groovy
- MongoResultsListIndexSpec.groovy
- NegateInListSpec.groovy
- NullifyPropertySpec.groovy
- OneToOneIntegritySpec.groovy
- OrderWithPaginationSpec.groovy
- ReadConcernArgumentSpec.groovy
- ResultsWithGroovyCollectionMethodsSpec.groovy
- SchemalessSpec.groovy
- SessionCachingSpec.groovy

Verified locally with ./gradlew :grails-data-mongodb-core:compileTestGroovy.

Assisted-by: claude-code:claude-4.7-opus
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

2 participants