package io.dropwizard.hibernate; import io.dropwizard.db.ManagedDataSource; import org.hibernate.SessionFactory; import org.junit.Test; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; public class SessionFactoryManagerTest { private final SessionFactory factory = mock(SessionFactory.class); private final ManagedDataSource dataSource = mock(ManagedDataSource.class); private final SessionFactoryManager manager = new SessionFactoryManager(factory, dataSource); @Test public void closesTheFactoryOnStopping() throws Exception { manager.stop(); verify(factory).close(); } @Test public void stopsTheDataSourceOnStopping() throws Exception { manager.stop(); verify(dataSource).stop(); } @Test public void startsTheDataSourceOnStarting() throws Exception { manager.start(); verify(dataSource).start(); } }