Added a new test for queryDslPredicateExecutor.findAll.

This commit is contained in:
Tom Vahlman 2012-04-08 23:55:37 +02:00
parent 01a722e918
commit ac625ed62c
3 changed files with 21 additions and 22 deletions
src
main/java/se/su/dsv/scipro/springdata
test/java/se/su/dsv/scipro/springdata

@ -44,20 +44,7 @@ public class SupervisorServiceImpl extends AbstractQueryService<Employee, Long>
}
@Override
public Iterable<Employee> findByUsersName(final Date dateCreated) {
QEmployee employee = QEmployee.employee;
BooleanExpression lastName = employee.user.lastName.eq("Vahlman")
.or(employee.user.lastName.eq("Larsson")
.or(employee.user.lastName.eq("Friis"))
.or(employee.user.lastName.eq("Tholerus"))
.or(employee.user.lastName.eq("Hallberg")));
BooleanExpression isNewEmployee = employee.user.dateCreated.eq(dateCreated);
OrderSpecifier<?> order = employee.user.lastName.asc();
return queryDslPredicateExecutor.findAll((lastName).and(isNewEmployee), order);
}
@Override
public Iterator<Employee> findSupervisorQuery(BooleanExpression booleanExpression, OrderSpecifier<?> orderSpecifier) {
return queryDslPredicateExecutor.findAll(booleanExpression, orderSpecifier).iterator();
public Iterable<Employee> findSupervisorQuery(BooleanExpression booleanExpression, OrderSpecifier<?> orderSpecifier) {
return queryDslPredicateExecutor.findAll(booleanExpression, orderSpecifier);
}
}

@ -15,7 +15,5 @@ public interface SupervisorService extends CrudService<Employee,Long>, QueryServ
public //List<Employee>
List<Employee> findAllEmployees(org.springframework.data.domain.Sort orders);
public Iterable<Employee> findByUsersName(final Date dateCreated);
public Iterator<Employee> findSupervisorQuery(BooleanExpression booleanExpression, OrderSpecifier<?> orderSpecifier);
public Iterable<Employee> findSupervisorQuery(BooleanExpression booleanExpression, OrderSpecifier<?> orderSpecifier);
}

@ -147,8 +147,18 @@ public class TestSupervisor {
Employee vahlman = getEmployee("Tom", "Vahlman", "tom@dsv.su.se", dateCreated);
Employee friis = getEmployee("Fredrik", "Friis", "fre-fri@dsv.su.se", dateCreated);
Employee larsson = getEmployee("Ken", "Larsson", "kenlars@dsv.su.se", dateCreated);
for(Employee employee : supervisorService.findByUsersName(dateCreated)) {
employeeList.add(employee);
QEmployee employee = QEmployee.employee;
BooleanExpression lastName = employee.user.lastName.eq("Vahlman")
.or(employee.user.lastName.eq("Larsson")
.or(employee.user.lastName.eq("Friis"))
.or(employee.user.lastName.eq("Tholerus"))
.or(employee.user.lastName.eq("Hallberg")));
BooleanExpression booleanExpression = employee.user.dateCreated.eq(dateCreated).and(lastName);
OrderSpecifier<?> orderByName = employee.user.lastName.asc();
for(Employee employee__ : supervisorService.findSupervisorQuery(booleanExpression, orderByName)) {
employeeList.add(employee__);
}
assertFalse(employeeList.isEmpty());
assertTrue(employeeList.size() == 5);
@ -241,10 +251,14 @@ public class TestSupervisor {
QEmployee employee = QEmployee.employee;
OrderSpecifier<?> orderBySize = employee.keywords.keywords.size().desc();
BooleanExpression employeeExists = employee.isNotNull();
Iterator<Employee> employeeIterator = supervisorService.findSupervisorQuery(employeeExists, orderBySize);
for(Employee employee__ : supervisorService.findSupervisorQuery(employeeExists, orderBySize)) {
employeeList.add(employee__);
}
/*Iterator<Employee> employeeIterator = supervisorService.findSupervisorQuery(employeeExists, orderBySize);
while (employeeIterator.hasNext()) {
employeeList.add(employeeIterator.next());
}
}*/
assertFalse(employeeList.isEmpty());
assertTrue(employeeList.get(0).equals(tholerus));
assertTrue(employeeList.get(1).equals(herder));