Commit c0f158df authored by Madhura Bhave's avatar Madhura Bhave

Polish "Do not fail if h2Console bean cannot connect to db"

See gh-23566
parent 2d76de29
...@@ -17,7 +17,6 @@ ...@@ -17,7 +17,6 @@
package org.springframework.boot.autoconfigure.h2; package org.springframework.boot.autoconfigure.h2;
import java.sql.Connection; import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource; import javax.sql.DataSource;
......
...@@ -23,7 +23,6 @@ import javax.sql.DataSource; ...@@ -23,7 +23,6 @@ import javax.sql.DataSource;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith; import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.BDDMockito;
import org.springframework.beans.BeansException; import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanCreationException; import org.springframework.beans.factory.BeanCreationException;
...@@ -37,6 +36,7 @@ import org.springframework.context.annotation.Bean; ...@@ -37,6 +36,7 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.BDDMockito.given;
import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mock;
/** /**
...@@ -45,6 +45,7 @@ import static org.mockito.Mockito.mock; ...@@ -45,6 +45,7 @@ import static org.mockito.Mockito.mock;
* @author Andy Wilkinson * @author Andy Wilkinson
* @author Marten Deinum * @author Marten Deinum
* @author Stephane Nicoll * @author Stephane Nicoll
* @author Shraddha Yeole
*/ */
class H2ConsoleAutoConfigurationTests { class H2ConsoleAutoConfigurationTests {
...@@ -123,24 +124,22 @@ class H2ConsoleAutoConfigurationTests { ...@@ -123,24 +124,22 @@ class H2ConsoleAutoConfigurationTests {
} }
@Test @Test
void testDataSource() { void h2ConsoleShouldNotFailIfDatabaseConnectionFails() {
this.contextRunner.withUserConfiguration(DataSourceAvailable.class) this.contextRunner.withUserConfiguration(CustomDataSourceConfiguration.class)
.withPropertyValues("spring.h2.console.enabled=true").run((context) -> { .withPropertyValues("spring.h2.console.enabled=true")
assertThat(context.isRunning()).isTrue(); .run((context) -> assertThat(context.isRunning()).isTrue());
});
} }
@Configuration(proxyBeanMethods = false) @Configuration(proxyBeanMethods = false)
static class DataSourceAvailable { static class CustomDataSourceConfiguration {
@Bean @Bean
public DataSource dataSource() throws SQLException { DataSource dataSource() throws SQLException {
DataSource dataSource = mock(DataSource.class); DataSource dataSource = mock(DataSource.class);
BDDMockito.when(dataSource.getConnection()).thenThrow(IllegalStateException.class); given(dataSource.getConnection()).willThrow(IllegalStateException.class);
return dataSource; return dataSource;
} }
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment