Checked exception is invalid for this method尝试使用此模拟程序时出现错误:
InitialContext mockContext;
mockContext = mock(InitialContext.class);
when((DataSource) mockContext.lookup("java:comp/env/jdbc/foo")).thenThrow(new ConnectionFactoryException("test")); // <-- Fails on this line
@Test
public void shouldThrowExceptionIfDataSourceDoesNotExist() throws ConnectionFactoryException {
assertThatExceptionOfType(ConnectionFactoryException.class)
.isThrownBy(() -> { new DataSourceFactory(mockContext).getDataSource("foo"); })
.withMessage("Unable to find jdbc/foo");
}
Run Code Online (Sandbox Code Playgroud)
我要测试的课程:
public class DataSourceFactory {
// Dependencies to be injected
private InitialContext context;
public DataSourceFactory(InitialContext context) throws ConnectionFactoryException {
if(context == null) {
throw new ConnectionFactoryException("context can't be null");
}
this.context = context;
}
public DataSource getDataSource(String dataSourceName) throws …Run Code Online (Sandbox Code Playgroud)