Test to sort by lastName and by firstName with RooIntegrationTest.

This commit is contained in:
Tom Vahlman 2012-03-31 19:29:46 +02:00
parent fc90e8d0ef
commit 8d56f16a27

@ -5,6 +5,7 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Sort;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@ -15,6 +16,7 @@ import se.su.dsv.scipro.data.dataobjects.Employee;
import se.su.dsv.scipro.data.dataobjects.User;
import se.su.dsv.scipro.data.dataobjects.Username;
import se.su.dsv.scipro.springdata.services.SupervisorService;
import org.springframework.roo.addon.test.RooIntegrationTest;
import java.util.ArrayList;
import java.util.List;
@ -24,6 +26,7 @@ import static org.junit.Assert.*;
@ContextConfiguration(inheritLocations = false, locations = {
"classpath:test-applicationContext.xml"
})
@RooIntegrationTest(entity = Employee.class)
public class TestSupervisor {
@Autowired
@ -38,24 +41,58 @@ public class TestSupervisor {
}
private Employee getEmployee(final String firstName, final String lastName, final String email) {
User user = new User();
user.setFirstName(firstName);
user.setLastName(lastName);
user.setEmailAddress(email);
user = userDao.save(user);
assertNotNull(user);
Employee employee = new Employee();
employee.setUser(user);
return supervisorService.save(employee);
}
/**
* Test for implementing a supervisorService with Spring Data
*/
@Test
@Transactional
@Rollback
public void findAllSupervisorsWithSpringData() {
public void findSupervisorLastName() {
List<Employee> employeeList = new ArrayList<Employee>();
User davidH = new User();
davidH.setFirstName("David");
davidH.setLastName("Hallberg");
davidH.setEmailAddress("dhallb@dsv.su.se");
davidH = userDao.save(davidH);
Employee larsson = getEmployee("Ken", "Larsson", "kenlars@dsv.su.se");
Employee hallberg = getEmployee("David", "Hallberg", "dhallb@dsv.su.se");
Employee tholerus = getEmployee("Torgny", "Tholerus", "torgny@dsv.su.se");
Employee moattar = getEmployee("Golrokh", "Moattar", "goli@dsv.su.se");
Employee friis = getEmployee("Fredrik", "Friis", "fre-fri@dsv.su.se");
Employee herder = getEmployee("Niklas", "Herder", "herder@dsv.su.se");
Sort sortOrder = new Sort("user.lastName");
employeeList.addAll(supervisorService.findAllEmployees(sortOrder));
assertFalse(employeeList.isEmpty());
assertTrue(employeeList.get(0).equals(friis));
assertTrue(employeeList.get(5).equals(tholerus));
}
Employee supervisor = new Employee();
supervisor.setUser(davidH);
supervisorService.save(supervisor);
employeeList.addAll(supervisorService.findAllEmployees());
assertTrue(employeeList.size() == 1);
/**
* Test for implementing a supervisorService with Spring Data
*/
@Test
@Transactional
@Rollback
public void findSupervisorFirstName() {
List<Employee> employeeList = new ArrayList<Employee>();
Employee larsson = getEmployee("Ken", "Larsson", "kenlars@dsv.su.se");
Employee hallberg = getEmployee("David", "Hallberg", "dhallb@dsv.su.se");
Employee tholerus = getEmployee("Torgny", "Tholerus", "torgny@dsv.su.se");
Employee moattar = getEmployee("Golrokh", "Moattar", "goli@dsv.su.se");
Employee friis = getEmployee("Fredrik", "Friis", "fre-fri@dsv.su.se");
Employee herder = getEmployee("Niklas", "Herder", "herder@dsv.su.se");
Sort sortOrder = new Sort("user.firstName");
employeeList.addAll(supervisorService.findAllEmployees(sortOrder));
assertFalse(employeeList.isEmpty());
assertTrue(employeeList.get(0).equals(hallberg));
assertTrue(employeeList.get(5).equals(tholerus));
}
}