modify spring query
This commit is contained in:
+15
-26
@@ -6,13 +6,10 @@ import static org.hamcrest.collection.IsIterableContainingInAnyOrder.containsInA
|
||||
import static org.hamcrest.collection.IsIterableContainingInOrder.contains;
|
||||
import static org.hamcrest.core.IsNot.not;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.baeldung.persistence.dao.MyUserPredicatesBuilder;
|
||||
import org.baeldung.persistence.dao.MyUserRepository;
|
||||
import org.baeldung.persistence.model.MyUser;
|
||||
import org.baeldung.persistence.service.impl.MyUserService;
|
||||
import org.baeldung.spring.PersistenceConfig;
|
||||
import org.baeldung.web.util.SearchCriteria;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
@@ -29,7 +26,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
public class JPAQuerydslTest {
|
||||
|
||||
@Autowired
|
||||
private MyUserService service;
|
||||
private MyUserRepository repo;
|
||||
|
||||
private MyUser userJohn;
|
||||
|
||||
@@ -42,32 +39,29 @@ public class JPAQuerydslTest {
|
||||
userJohn.setLastName("Doe");
|
||||
userJohn.setEmail("john@doe.com");
|
||||
userJohn.setAge(22);
|
||||
service.save(userJohn);
|
||||
repo.save(userJohn);
|
||||
|
||||
userTom = new MyUser();
|
||||
userTom.setFirstName("Tom");
|
||||
userTom.setLastName("Doe");
|
||||
userTom.setEmail("tom@doe.com");
|
||||
userTom.setAge(26);
|
||||
service.save(userTom);
|
||||
repo.save(userTom);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenLast_whenGettingListOfUsers_thenCorrect() {
|
||||
final List<SearchCriteria> params = new ArrayList<SearchCriteria>();
|
||||
params.add(new SearchCriteria("lastName", ":", "Doe"));
|
||||
final MyUserPredicatesBuilder builder = new MyUserPredicatesBuilder().with("lastName", ":", "Doe");
|
||||
|
||||
final Iterable<MyUser> results = service.search(params);
|
||||
final Iterable<MyUser> results = repo.findAll(builder.build());
|
||||
assertThat(results, containsInAnyOrder(userJohn, userTom));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenFirstAndLastName_whenGettingListOfUsers_thenCorrect() {
|
||||
final List<SearchCriteria> params = new ArrayList<SearchCriteria>();
|
||||
params.add(new SearchCriteria("firstName", ":", "John"));
|
||||
params.add(new SearchCriteria("lastName", ":", "Doe"));
|
||||
final MyUserPredicatesBuilder builder = new MyUserPredicatesBuilder().with("firstName", ":", "John").with("lastName", ":", "Doe");
|
||||
|
||||
final Iterable<MyUser> results = service.search(params);
|
||||
final Iterable<MyUser> results = repo.findAll(builder.build());
|
||||
|
||||
assertThat(results, contains(userJohn));
|
||||
assertThat(results, not(contains(userTom)));
|
||||
@@ -75,11 +69,9 @@ public class JPAQuerydslTest {
|
||||
|
||||
@Test
|
||||
public void givenLastAndAge_whenGettingListOfUsers_thenCorrect() {
|
||||
final List<SearchCriteria> params = new ArrayList<SearchCriteria>();
|
||||
params.add(new SearchCriteria("lastName", ":", "Doe"));
|
||||
params.add(new SearchCriteria("age", ">", "25"));
|
||||
final MyUserPredicatesBuilder builder = new MyUserPredicatesBuilder().with("lastName", ":", "Doe").with("age", ">", "25");
|
||||
|
||||
final Iterable<MyUser> results = service.search(params);
|
||||
final Iterable<MyUser> results = repo.findAll(builder.build());
|
||||
|
||||
assertThat(results, contains(userTom));
|
||||
assertThat(results, not(contains(userJohn)));
|
||||
@@ -87,20 +79,17 @@ public class JPAQuerydslTest {
|
||||
|
||||
@Test
|
||||
public void givenWrongFirstAndLast_whenGettingListOfUsers_thenCorrect() {
|
||||
final List<SearchCriteria> params = new ArrayList<SearchCriteria>();
|
||||
params.add(new SearchCriteria("firstName", ":", "Adam"));
|
||||
params.add(new SearchCriteria("lastName", ":", "Fox"));
|
||||
final MyUserPredicatesBuilder builder = new MyUserPredicatesBuilder().with("firstName", ":", "Adam").with("lastName", ":", "Fox");
|
||||
|
||||
final Iterable<MyUser> results = service.search(params);
|
||||
final Iterable<MyUser> results = repo.findAll(builder.build());
|
||||
assertThat(results, emptyIterable());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenPartialFirst_whenGettingListOfUsers_thenCorrect() {
|
||||
final List<SearchCriteria> params = new ArrayList<SearchCriteria>();
|
||||
params.add(new SearchCriteria("firstName", ":", "jo"));
|
||||
final MyUserPredicatesBuilder builder = new MyUserPredicatesBuilder().with("firstName", ":", "jo");
|
||||
|
||||
final Iterable<MyUser> results = service.search(params);
|
||||
final Iterable<MyUser> results = repo.findAll(builder.build());
|
||||
|
||||
assertThat(results, contains(userJohn));
|
||||
assertThat(results, not(contains(userTom)));
|
||||
|
||||
Reference in New Issue
Block a user