diff --git a/hibernate-entitymanager/src/test/java/org/hibernate/jpa/test/connection/DataSourceInjectionTest.java b/hibernate-entitymanager/src/test/java/org/hibernate/jpa/test/connection/DataSourceInjectionTest.java index 5b30f3fcc5..706e093add 100644 --- a/hibernate-entitymanager/src/test/java/org/hibernate/jpa/test/connection/DataSourceInjectionTest.java +++ b/hibernate-entitymanager/src/test/java/org/hibernate/jpa/test/connection/DataSourceInjectionTest.java @@ -24,10 +24,15 @@ package org.hibernate.jpa.test.connection; import java.io.File; -import org.junit.Assert; +import javax.persistence.EntityManagerFactory; + import org.junit.Test; -import org.hibernate.ejb.HibernatePersistence; +import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl; +import org.hibernate.engine.spi.SessionFactoryImplementor; +import org.hibernate.jpa.HibernatePersistenceProvider; + +import static org.hibernate.testing.junit4.ExtraAssertions.assertTyping; /** * @author Emmanuel Bernard @@ -40,8 +45,12 @@ public class DataSourceInjectionTest { sub.mkdir(); PersistenceUnitInfoImpl info = new PersistenceUnitInfoImpl( sub.toURI().toURL(), new String[]{} ); try { - new HibernatePersistence().createContainerEntityManagerFactory( info, null ); - Assert.fail( "FakeDatasource should have been used" ); + EntityManagerFactory emf = new HibernatePersistenceProvider().createContainerEntityManagerFactory( info, null ); + DatasourceConnectionProviderImpl cp = assertTyping( + DatasourceConnectionProviderImpl.class, + emf.unwrap( SessionFactoryImplementor.class ).getConnectionProvider() + ); + assertTyping( FakeDataSource.class, cp.getDataSource() ); } catch (FakeDataSourceException fde) { //success