Browse Source

Polishing

(cherry picked from commit 2aae0a4e0c)
pull/31598/head
Juergen Hoeller 3 years ago
parent
commit
9931f442e4
  1. 6
      spring-jdbc/src/test/java/org/springframework/jdbc/core/BeanPropertyRowMapperTests.java
  2. 51
      spring-jdbc/src/test/java/org/springframework/jdbc/core/support/LobSupportTests.java

6
spring-jdbc/src/test/java/org/springframework/jdbc/core/BeanPropertyRowMapperTests.java

@ -50,7 +50,7 @@ class BeanPropertyRowMapperTests extends AbstractRowMapperTests {
void overridingDifferentClassDefinedForMapping() { void overridingDifferentClassDefinedForMapping() {
BeanPropertyRowMapper mapper = new BeanPropertyRowMapper(Person.class); BeanPropertyRowMapper mapper = new BeanPropertyRowMapper(Person.class);
assertThatExceptionOfType(InvalidDataAccessApiUsageException.class) assertThatExceptionOfType(InvalidDataAccessApiUsageException.class)
.isThrownBy(() -> mapper.setMappedClass(Long.class)); .isThrownBy(() -> mapper.setMappedClass(Long.class));
} }
@Test @Test
@ -104,7 +104,7 @@ class BeanPropertyRowMapperTests extends AbstractRowMapperTests {
BeanPropertyRowMapper<ExtendedPerson> mapper = new BeanPropertyRowMapper<>(ExtendedPerson.class, true); BeanPropertyRowMapper<ExtendedPerson> mapper = new BeanPropertyRowMapper<>(ExtendedPerson.class, true);
Mock mock = new Mock(); Mock mock = new Mock();
assertThatExceptionOfType(InvalidDataAccessApiUsageException.class) assertThatExceptionOfType(InvalidDataAccessApiUsageException.class)
.isThrownBy(() -> mock.getJdbcTemplate().query("select name, age, birth_date, balance from people", mapper)); .isThrownBy(() -> mock.getJdbcTemplate().query("select name, age, birth_date, balance from people", mapper));
} }
@Test @Test
@ -112,7 +112,7 @@ class BeanPropertyRowMapperTests extends AbstractRowMapperTests {
BeanPropertyRowMapper<Person> mapper = new BeanPropertyRowMapper<>(Person.class); BeanPropertyRowMapper<Person> mapper = new BeanPropertyRowMapper<>(Person.class);
Mock mock = new Mock(MockType.TWO); Mock mock = new Mock(MockType.TWO);
assertThatExceptionOfType(TypeMismatchException.class) assertThatExceptionOfType(TypeMismatchException.class)
.isThrownBy(() -> mock.getJdbcTemplate().query(SELECT_NULL_AS_AGE, mapper)); .isThrownBy(() -> mock.getJdbcTemplate().query(SELECT_NULL_AS_AGE, mapper));
} }
@Test @Test

51
spring-jdbc/src/test/java/org/springframework/jdbc/core/support/LobSupportTests.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2019 the original author or authors. * Copyright 2002-2023 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -23,7 +23,6 @@ import java.sql.SQLException;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.dao.DataAccessException;
import org.springframework.dao.IncorrectResultSizeDataAccessException; import org.springframework.dao.IncorrectResultSizeDataAccessException;
import org.springframework.jdbc.LobRetrievalFailureException; import org.springframework.jdbc.LobRetrievalFailureException;
import org.springframework.jdbc.support.lob.LobCreator; import org.springframework.jdbc.support.lob.LobCreator;
@ -55,11 +54,9 @@ public class LobSupportTests {
final SetValuesCalled svc = new SetValuesCalled(); final SetValuesCalled svc = new SetValuesCalled();
AbstractLobCreatingPreparedStatementCallback psc = new AbstractLobCreatingPreparedStatementCallback( AbstractLobCreatingPreparedStatementCallback psc = new AbstractLobCreatingPreparedStatementCallback(handler) {
handler) {
@Override @Override
protected void setValues(PreparedStatement ps, LobCreator lobCreator) protected void setValues(PreparedStatement ps, LobCreator lobCreator) {
throws SQLException, DataAccessException {
svc.b = true; svc.b = true;
} }
}; };
@ -73,46 +70,43 @@ public class LobSupportTests {
@Test @Test
public void testAbstractLobStreamingResultSetExtractorNoRows() throws SQLException { public void testAbstractLobStreamingResultSetExtractorNoRows() throws SQLException {
ResultSet rset = mock(ResultSet.class); ResultSet rs = mock(ResultSet.class);
AbstractLobStreamingResultSetExtractor<Void> lobRse = getResultSetExtractor(false); AbstractLobStreamingResultSetExtractor<Void> lobRse = getResultSetExtractor(false);
assertThatExceptionOfType(IncorrectResultSizeDataAccessException.class).isThrownBy(() -> assertThatExceptionOfType(IncorrectResultSizeDataAccessException.class)
lobRse.extractData(rset)); .isThrownBy(() -> lobRse.extractData(rs));
verify(rset).next(); verify(rs).next();
} }
@Test @Test
public void testAbstractLobStreamingResultSetExtractorOneRow() throws SQLException { public void testAbstractLobStreamingResultSetExtractorOneRow() throws SQLException {
ResultSet rset = mock(ResultSet.class); ResultSet rs = mock(ResultSet.class);
given(rset.next()).willReturn(true, false); given(rs.next()).willReturn(true, false);
AbstractLobStreamingResultSetExtractor<Void> lobRse = getResultSetExtractor(false); AbstractLobStreamingResultSetExtractor<Void> lobRse = getResultSetExtractor(false);
lobRse.extractData(rset); lobRse.extractData(rs);
verify(rset).clearWarnings(); verify(rs).clearWarnings();
} }
@Test @Test
public void testAbstractLobStreamingResultSetExtractorMultipleRows() public void testAbstractLobStreamingResultSetExtractorMultipleRows() throws SQLException {
throws SQLException { ResultSet rs = mock(ResultSet.class);
ResultSet rset = mock(ResultSet.class); given(rs.next()).willReturn(true, true, false);
given(rset.next()).willReturn(true, true, false);
AbstractLobStreamingResultSetExtractor<Void> lobRse = getResultSetExtractor(false); AbstractLobStreamingResultSetExtractor<Void> lobRse = getResultSetExtractor(false);
assertThatExceptionOfType(IncorrectResultSizeDataAccessException.class).isThrownBy(() -> assertThatExceptionOfType(IncorrectResultSizeDataAccessException.class)
lobRse.extractData(rset)); .isThrownBy(() -> lobRse.extractData(rs));
verify(rset).clearWarnings(); verify(rs).clearWarnings();
} }
@Test @Test
public void testAbstractLobStreamingResultSetExtractorCorrectException() public void testAbstractLobStreamingResultSetExtractorCorrectException() throws SQLException {
throws SQLException { ResultSet rs = mock(ResultSet.class);
ResultSet rset = mock(ResultSet.class); given(rs.next()).willReturn(true);
given(rset.next()).willReturn(true);
AbstractLobStreamingResultSetExtractor<Void> lobRse = getResultSetExtractor(true); AbstractLobStreamingResultSetExtractor<Void> lobRse = getResultSetExtractor(true);
assertThatExceptionOfType(LobRetrievalFailureException.class).isThrownBy(() -> assertThatExceptionOfType(LobRetrievalFailureException.class)
lobRse.extractData(rset)); .isThrownBy(() -> lobRse.extractData(rs));
} }
private AbstractLobStreamingResultSetExtractor<Void> getResultSetExtractor(final boolean ex) { private AbstractLobStreamingResultSetExtractor<Void> getResultSetExtractor(final boolean ex) {
AbstractLobStreamingResultSetExtractor<Void> lobRse = new AbstractLobStreamingResultSetExtractor<Void>() { AbstractLobStreamingResultSetExtractor<Void> lobRse = new AbstractLobStreamingResultSetExtractor<Void>() {
@Override @Override
protected void streamData(ResultSet rs) throws SQLException, IOException { protected void streamData(ResultSet rs) throws SQLException, IOException {
if (ex) { if (ex) {
@ -125,4 +119,5 @@ public class LobSupportTests {
}; };
return lobRse; return lobRse;
} }
} }

Loading…
Cancel
Save