Browse Source

DATAJDBC-172 - Polishing.

Formatting.
Added @author tag.
pull/42/head
Jens Schauder 8 years ago
parent
commit
7ed2ed7d7e
  1. 2
      src/main/java/org/springframework/data/jdbc/repository/support/JdbcRepositoryQuery.java
  2. 40
      src/test/java/org/springframework/data/jdbc/repository/query/QueryAnnotationHsqlIntegrationTests.java

2
src/main/java/org/springframework/data/jdbc/repository/support/JdbcRepositoryQuery.java

@ -26,6 +26,7 @@ import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
* method. * method.
* *
* @author Jens Schauder * @author Jens Schauder
* @author Kazuki Shimizu
*/ */
class JdbcRepositoryQuery implements RepositoryQuery { class JdbcRepositoryQuery implements RepositoryQuery {
@ -57,6 +58,7 @@ class JdbcRepositoryQuery implements RepositoryQuery {
if (queryMethod.isCollectionQuery() || queryMethod.isStreamQuery()) { if (queryMethod.isCollectionQuery() || queryMethod.isStreamQuery()) {
return context.getTemplate().query(query, parameters, rowMapper); return context.getTemplate().query(query, parameters, rowMapper);
} else { } else {
try { try {
return context.getTemplate().queryForObject(query, parameters, rowMapper); return context.getTemplate().queryForObject(query, parameters, rowMapper);
} catch (EmptyResultDataAccessException e) { } catch (EmptyResultDataAccessException e) {

40
src/test/java/org/springframework/data/jdbc/repository/query/QueryAnnotationHsqlIntegrationTests.java

@ -15,12 +15,6 @@
*/ */
package org.springframework.data.jdbc.repository.query; package org.springframework.data.jdbc.repository.query;
import static org.assertj.core.api.Assertions.*;
import java.util.List;
import java.util.Optional;
import java.util.stream.Stream;
import org.junit.ClassRule; import org.junit.ClassRule;
import org.junit.Rule; import org.junit.Rule;
import org.junit.Test; import org.junit.Test;
@ -39,21 +33,29 @@ import org.springframework.test.context.junit4.rules.SpringClassRule;
import org.springframework.test.context.junit4.rules.SpringMethodRule; import org.springframework.test.context.junit4.rules.SpringMethodRule;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Optional;
import java.util.stream.Stream;
import static org.assertj.core.api.Assertions.*; import static org.assertj.core.api.Assertions.*;
/** /**
* Tests the execution of queries from {@link Query} annotations on repository methods. * Tests the execution of queries from {@link Query} annotations on repository methods.
* *
* @author Jens Schauder * @author Jens Schauder
* @author Kazuki Shimizu
*/ */
@ContextConfiguration @ContextConfiguration
@Transactional @Transactional
public class QueryAnnotationHsqlIntegrationTests { public class QueryAnnotationHsqlIntegrationTests {
@Autowired DummyEntityRepository repository; @Autowired
DummyEntityRepository repository;
@ClassRule public static final SpringClassRule classRule = new SpringClassRule(); @ClassRule
@Rule public SpringMethodRule methodRule = new SpringMethodRule(); public static final SpringClassRule classRule = new SpringClassRule();
@Rule
public SpringMethodRule methodRule = new SpringMethodRule();
@Test // DATAJDBC-164 @Test // DATAJDBC-164
public void executeCustomQueryWithoutParameter() { public void executeCustomQueryWithoutParameter() {
@ -65,8 +67,8 @@ public class QueryAnnotationHsqlIntegrationTests {
List<DummyEntity> entities = repository.findByNameContainingCapitalLetter(); List<DummyEntity> entities = repository.findByNameContainingCapitalLetter();
assertThat(entities) // assertThat(entities) //
.extracting(e -> e.name) // .extracting(e -> e.name) //
.containsExactlyInAnyOrder("Example", "EXAMPLE"); .containsExactlyInAnyOrder("Example", "EXAMPLE");
} }
@ -80,18 +82,17 @@ public class QueryAnnotationHsqlIntegrationTests {
List<DummyEntity> entities = repository.findByNamedRangeWithNamedParameter("a", "c"); List<DummyEntity> entities = repository.findByNamedRangeWithNamedParameter("a", "c");
assertThat(entities) // assertThat(entities) //
.extracting(e -> e.name) // .extracting(e -> e.name) //
.containsExactlyInAnyOrder("b"); .containsExactlyInAnyOrder("b");
} }
@Test // DATAJDBC-172 @Test // DATAJDBC-172
public void executeCustomQueryWithReturnTypeIsOptional() { public void executeCustomQueryWithReturnTypeIsOptional() {
DummyEntity dummyEntity = dummyEntity("a"); repository.save(dummyEntity("a"));
repository.save(dummyEntity);
Optional<DummyEntity> entity = repository.findByIdWithReturnTypeIsOptional(dummyEntity.id); Optional<DummyEntity> entity = repository.findByNameAsOptional("a");
assertThat(entity).map(e -> e.name).contains("a"); assertThat(entity).map(e -> e.name).contains("a");
@ -160,8 +161,8 @@ public class QueryAnnotationHsqlIntegrationTests {
Stream<DummyEntity> entities = repository.findAllWithReturnTypeIsStream(); Stream<DummyEntity> entities = repository.findAllWithReturnTypeIsStream();
assertThat(entities) // assertThat(entities) //
.extracting(e -> e.name) // .extracting(e -> e.name) //
.containsExactlyInAnyOrder("a", "b"); .containsExactlyInAnyOrder("a", "b");
} }
@ -185,7 +186,8 @@ public class QueryAnnotationHsqlIntegrationTests {
private static class DummyEntity { private static class DummyEntity {
@Id Long id; @Id
Long id;
String name; String name;
} }

Loading…
Cancel
Save