Just added a simple test with a JPAQuery.

This commit is contained in:
Tom Vahlman 2012-04-06 14:25:09 +02:00
parent 9fe8659bfc
commit 18263866b1
3 changed files with 12 additions and 8 deletions
src
main/java/se/su/dsv/scipro/springdata
test/java/se/su/dsv/scipro/springdata

@ -16,6 +16,7 @@ import se.su.dsv.scipro.springdata.services.SupervisorService;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.persistence.EntityManager; import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext; import javax.persistence.PersistenceContext;
import java.util.Date;
import java.util.List; import java.util.List;
@ -44,9 +45,11 @@ public class SupervisorServiceImpl extends AbstractQueryService<Employee, Long>
} }
@Override @Override
public List<Employee> findByUsersName() { QEmployee employee = QEmployee.employee; public List<Employee> findByUsersName(final Date dateCreated) {
QEmployee employee = QEmployee.employee;
BooleanExpression lastName = employee.user.lastName.eq("Vahlman"); BooleanExpression lastName = employee.user.lastName.eq("Vahlman");
return new JPAQuery(em).from(employee).where(lastName).list(employee); BooleanExpression isNewEmployee = employee.user.dateCreated.eq(dateCreated);
return new JPAQuery(em).from(employee).where((lastName).and(isNewEmployee)).list(employee);
} }
} }

@ -1,6 +1,7 @@
package se.su.dsv.scipro.springdata.services; package se.su.dsv.scipro.springdata.services;
import se.su.dsv.scipro.data.dataobjects.Employee; import se.su.dsv.scipro.data.dataobjects.Employee;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
@ -10,5 +11,5 @@ import java.util.List;
public interface SupervisorService extends CrudService<Employee,Long>, QueryService<Employee, Long> { public interface SupervisorService extends CrudService<Employee,Long>, QueryService<Employee, Long> {
public List<Employee> findAllEmployees(org.springframework.data.domain.Sort orders); public List<Employee> findAllEmployees(org.springframework.data.domain.Sort orders);
public List<Employee> findByUsersName(); public List<Employee> findByUsersName(final Date dateCreated);
} }

@ -22,10 +22,8 @@ import se.su.dsv.scipro.match.dataobject.Keyword;
import se.su.dsv.scipro.match.dataobject.KeywordType; import se.su.dsv.scipro.match.dataobject.KeywordType;
import se.su.dsv.scipro.springdata.services.SupervisorService; import se.su.dsv.scipro.springdata.services.SupervisorService;
import java.util.ArrayList; import java.util.*;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import static org.junit.Assert.*; import static org.junit.Assert.*;
@RunWith(SpringJUnit4ClassRunner.class) @RunWith(SpringJUnit4ClassRunner.class)
@ -142,9 +140,11 @@ public class TestSupervisor {
@Rollback @Rollback
public void findEmployeeByName() { public void findEmployeeByName() {
List<Employee> employeeList = new ArrayList<Employee>(); List<Employee> employeeList = new ArrayList<Employee>();
Date dateCreated = new Date();
Employee vahlman = getEmployee("Tom", "Vahlman", "tom@dsv.su.se"); Employee vahlman = getEmployee("Tom", "Vahlman", "tom@dsv.su.se");
vahlman.getUser().setDateCreated(dateCreated);
vahlman = supervisorService.save(vahlman); vahlman = supervisorService.save(vahlman);
employeeList.addAll(supervisorService.findByUsersName()); employeeList.addAll(supervisorService.findByUsersName(dateCreated));
assertFalse(employeeList.isEmpty()); assertFalse(employeeList.isEmpty());
assertTrue(employeeList.get(0).equals(vahlman)); assertTrue(employeeList.get(0).equals(vahlman));
} }