package org.resthub.jpa.sql;
import org.h2.jdbcx.JdbcDataSource;
import javax.sql.DataSource;
import java.sql.*;
import java.util.logging.Logger;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
public class FakeDataSource extends JdbcDataSource implements DataSource {
private Connection mockedConnection = mock(Connection.class);
public FakeDataSource() {
try {
when(this.mockedConnection.createStatement()).thenReturn(mock(Statement.class));
when(this.mockedConnection.getMetaData()).thenReturn(mock(DatabaseMetaData.class));
} catch (SQLException e) {
e.printStackTrace();
}
}
@Override
public Connection getConnection() throws SQLException {
return this.mockedConnection;
}
@Override
public Connection getConnection(String username, String password) throws SQLException {
return this.mockedConnection;
}
@Override
public Logger getParentLogger() throws SQLFeatureNotSupportedException {
return null;
}
}