BAEL-3069 Rename the folder name to spring-persistence-simple-2
This commit is contained in:
+47
@@ -0,0 +1,47 @@
|
||||
package com.baeldung.jdbc;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.mockito.junit.MockitoJUnitRunner;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder;
|
||||
import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType;
|
||||
import org.springframework.test.util.ReflectionTestUtils;
|
||||
|
||||
|
||||
@RunWith(MockitoJUnitRunner.class)
|
||||
|
||||
public class EmployeeDAOUnitTest {
|
||||
@Mock
|
||||
JdbcTemplate jdbcTemplate;
|
||||
|
||||
@Test
|
||||
public void whenMockJdbcTemplate_thenReturnCorrectEmployeeCount() {
|
||||
EmployeeDAO employeeDAO = new EmployeeDAO();
|
||||
ReflectionTestUtils.setField(employeeDAO, "jdbcTemplate", jdbcTemplate);
|
||||
Mockito.when(jdbcTemplate.queryForObject("SELECT COUNT(*) FROM EMPLOYEE", Integer.class))
|
||||
.thenReturn(4);
|
||||
assertEquals(4, employeeDAO.getCountOfEmployees());
|
||||
|
||||
Mockito.when(jdbcTemplate.queryForObject(Mockito.anyString(), Mockito.eq(Integer.class)))
|
||||
.thenReturn(3);
|
||||
assertEquals(3, employeeDAO.getCountOfEmployees());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenInjectInMemoryDataSource_thenReturnCorrectEmployeeCount() {
|
||||
DataSource dataSource = new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseType.H2)
|
||||
.addScript("classpath:jdbc/schema.sql")
|
||||
.addScript("classpath:jdbc/test-data.sql")
|
||||
.build();
|
||||
EmployeeDAO employeeDAO = new EmployeeDAO();
|
||||
employeeDAO.setDataSource(dataSource);
|
||||
assertEquals(4, employeeDAO.getCountOfEmployees());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user