HHH-16625 Introduce a compilation unit among tests to serve as reminder about Quarkus requirements
This commit is contained in:
parent
bca9b51aaa
commit
99e5a09b54
|
@ -0,0 +1,53 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
package org.hibernate.orm.test.quarkus;
|
||||
|
||||
import org.hibernate.boot.internal.MetadataImpl;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
/**
|
||||
* Quarkus needs to be able to make a deep copy of MetadataImpl;
|
||||
* for this to be possible, it needs to expose some of its state.
|
||||
* Adding a test to help remembering about this requirement: we
|
||||
* only need this to compile so that it serves as a reminder.
|
||||
*/
|
||||
public class MetadataCopyingTest {
|
||||
|
||||
public void copyIsPossible() {
|
||||
MetadataImpl existingInstance = fetchSomehowOldCopy();
|
||||
//Test that for each constructor parameter needed to create a new MetadataImpl,
|
||||
//we can actually read the matching state from an existing MetadataImpl instance.
|
||||
MetadataImpl newcopy = new MetadataImpl(
|
||||
existingInstance.getUUID(),
|
||||
existingInstance.getMetadataBuildingOptions(),
|
||||
existingInstance.getEntityBindingMap(),
|
||||
existingInstance.getComposites(),
|
||||
existingInstance.getGenericComponentsMap(),
|
||||
existingInstance.getMappedSuperclassMap(),
|
||||
existingInstance.getCollectionBindingMap(),
|
||||
existingInstance.getTypeDefinitionMap(),
|
||||
existingInstance.getFilterDefinitions(),
|
||||
existingInstance.getFetchProfileMap(),
|
||||
existingInstance.getImports(),
|
||||
existingInstance.getIdGeneratorDefinitionMap(),
|
||||
existingInstance.getNamedQueryMap(),
|
||||
existingInstance.getNamedNativeQueryMap(),
|
||||
existingInstance.getNamedProcedureCallMap(),
|
||||
existingInstance.getSqlResultSetMappingMap(),
|
||||
existingInstance.getNamedEntityGraphs(),
|
||||
existingInstance.getSqlFunctionMap(),
|
||||
existingInstance.getDatabase(),
|
||||
existingInstance.getBootstrapContext()
|
||||
);
|
||||
}
|
||||
|
||||
private MetadataImpl fetchSomehowOldCopy() {
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
package org.hibernate.orm.test.quarkus;
|
||||
|
||||
/**
|
||||
* Contains hints and reminders useful to smoother compatibility with Quarkus.
|
||||
* These are intentionally not full integration tests to avoid high coupling
|
||||
* and circularity of builds, but meant as simple reminders during maintenance
|
||||
* of Hibernate ORM.
|
||||
* It's acceptable to occasionally change these, but please ensure there's
|
||||
* a plan for progress that works for both projects.
|
||||
*/
|
Loading…
Reference in New Issue