I have a junit + powermock test which is giving me NullPointerException after execution.
Error:
Running com.ebayenterprise.publicapi.events.dao.EventLogDaoTest
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.36 sec <<< FAILURE! - in com.ebayenterprise.publicapi.events.dao.EventLogDaoTest
testGetNextEventIdSequence(com.ebayenterprise.publicapi.events.dao.EventLogDaoTest)  Time elapsed: 0.05 sec  <<< ERROR!
java.lang.NullPointerException: null
    at com.ebayenterprise.publicapi.events.dao.EventLogDaoTest.testGetNextEventIdSequence(EventLogDaoTest.java:27)
EventLogDaoTest.java
public class EventLogDaoTest {
    private final DataSource dataSource = Mockito.mock(DataSource.class);
    private final PlatformTransactionManager txManager = Mockito.mock(PlatformTransactionManager.class);
    private static final long MOCK_EVENT_ID = 1001;
    private JdbcTemplate jdbcTemplate;
    private EventLogDao eventLogDao;
    @Before
    public void setup() {
        eventLogDao = new EventLogDao(dataSource, txManager);
    }
    @Test
    public void testGetNextEventIdSequence() {
        when(jdbcTemplate.queryForLong("select next-seq-value from table")).thenReturn(MOCK_EVENT_ID);
        long eventId = eventLogDao.getNextEventIdSequence();
        assertTrue(eventId == 1001);
    }
}
EventLogDao.java
@Repository
public class EventLogDao extends BaseEventLogDao {
    public EventLogDao(DataSource dataSource, PlatformTransactionManager transactionManager) {
        super(dataSource, transactionManager);
    }
}
BaseEventLogDao.java
public abstract class BaseEventLogDao {
    protected final JdbcTemplate jdbcTemplate;
    protected final PlatformTransactionManager transactionManager;
    public BaseEventLogDao(DataSource dataSource, PlatformTransactionManager transactionManager) {
        this.jdbcTemplate = new JdbcTemplate(dataSource);
        this.transactionManager = transactionManager;
    }
public long getNextEventIdSequence() {
        long eventIdSeq = jdbcTemplate.queryForLong(SELECT_EVENT_LOG_SEQUENCE_SQL);
        System.out.println("eventIdSeq = " + eventIdSeq);
        return eventIdSeq;
    }
}
