adding some tests

This commit is contained in:
Fredrik Friis 2012-03-29 16:20:37 +09:00
parent 78fa7082f2
commit f6dbff1842

@ -1,7 +1,6 @@
package se.su.dsv.scipro.springdata;
import edu.emory.mathcs.backport.java.util.Arrays;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
@ -15,10 +14,8 @@ import se.su.dsv.scipro.data.dao.interfaces.RoleDao;
import se.su.dsv.scipro.data.dao.interfaces.UserDao;
import se.su.dsv.scipro.data.dataobjects.*;
import se.su.dsv.scipro.match.dao.interfaces.MatchDao;
import se.su.dsv.scipro.match.dao.interfaces.ProjectIdeaDao.Params;
import se.su.dsv.scipro.match.dataobject.ApplicationPeriod;
import se.su.dsv.scipro.match.dataobject.Match;
import se.su.dsv.scipro.match.dataobject.Match.Status;
import se.su.dsv.scipro.match.dataobject.ProjectIdea;
import se.su.dsv.scipro.match.facade.ApplicationPeriodFacade;
import se.su.dsv.scipro.springdata.repos.ProjectClassRepo;
@ -26,7 +23,10 @@ import se.su.dsv.scipro.springdata.repos.ProjectIdeaRepo;
import se.su.dsv.scipro.springdata.services.ProjectIdeaService;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Date;
import java.util.HashSet;
import java.util.Locale;
import java.util.Set;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(inheritLocations = false, locations = {
@ -66,10 +66,6 @@ public class TestProjectIdea {
private ProjectIdea projectIdea3;
private User employee1;
private Employee employee1Role;
SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH);
private Date date12Maj2010;
@ -80,6 +76,10 @@ public class TestProjectIdea {
private Date date18Aug2010;
private User employee1;
private Employee employee1Role;
@Before
public void startTransaction() throws Exception {
student1 = new User();
@ -100,11 +100,11 @@ public class TestProjectIdea {
ProjectClass bachelor = new ProjectClass(ProjectClass.BACHELOR, "Bachelor",
"Bachelor degree thesis project");
bachelor = projectClassRepo.save(bachelor);
bachelor = projectClassRepo.save(bachelor); //shouldnt this be provided by the service class?
ProjectClass master = new ProjectClass(ProjectClass.MASTER, "Master",
"Master degree thesis project");
master = projectClassRepo.save(master);
master = projectClassRepo.save(master); //shouldnt this be provided by the service class?
Set<ProjectClass> projectClassSet = new HashSet<ProjectClass>();
projectClassSet.add(bachelor);
@ -116,282 +116,334 @@ public class TestProjectIdea {
projectIdea1.getAuthors().add(student1Author);
projectIdea1.setProjectClass(bachelor);
projectIdea1.setApplicationPeriod(applicationPeriod);
projectIdea1 = projectIdeaService.save(projectIdea1);
projectIdeaRepo.
projectIdea1 = projectIdeaRepo.save(projectIdea1); //shouldnt this be provided by the service class?
projectIdea2 = new ProjectIdea();
projectIdea2.setTitle("Idea 2");
projectIdea2.getAuthors().add(student1Author);
projectIdea2.setProjectClass(master);
projectIdea2.setApplicationPeriod(applicationPeriod);
projectIdea2 = projectIdeaDao.save(projectIdea2);
projectIdea2 = projectIdeaRepo.save(projectIdea2); //shouldnt this be provided by the service class?
projectIdea3 = new ProjectIdea();
projectIdea3.setTitle("A Project 2");
projectIdea3.setProjectClass(bachelor);
projectIdea3.setApplicationPeriod(applicationPeriod);
projectIdea3 = projectIdeaDao.save(projectIdea3);
target = projectIdeaDao;
params = new Params();
rejected = new ArrayList<Status>();
rejected.add(Status.REJECTED);
unmatched = new ArrayList<Status>();
unmatched.add(Status.UNMATCHED);
published = new ArrayList<Status>();
published.add(Status.PUBLISHED);
projectIdea3 = projectIdeaRepo.save(projectIdea3); //shouldnt this be provided by the service class?
date12Maj2010 = date.parse("2010-05-12");
date14Maj2010 = date.parse("2010-05-14");
date15Jun2010 = date.parse("2010-06-15");
date18Aug2010 = date.parse("2010-08-18");
employee1 = new User();
employee1 = userDao.save(employee1);
employee1Role = new Employee();
employee1Role.setUser(employee1);
employee1Role = (Employee) roleDao.save(employee1Role);
}
/**
* No matches have been saved, method should return 0.
*/
@Test
@Transactional
@Rollback
public void testShouldReturnAllAuthorsProjectIdeasThatHaveNotEvolvedIntoAProject() {
projectIdea3.getAuthors().add(student1Author);
projectIdea2.setProject(project);
List<ProjectIdea> projectIdeas =
target.findActiveProjectIdeas(student1Author);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1,
projectIdea3 }), projectIdeas);
public void testCountProjectIdeaByMatchStatus1() {
Long l = new Long(0);
Assert.assertEquals(l, projectIdeaService.countProjectIdeaByMatchStatus(Match.Status.UNMATCHED));
}
/**
* A match with the same status as the queried one is saved before querying, method should return 1.
*/
@Test
@Transactional
@Rollback
public void testShouldReturnOnlyAuthorsProject() {
projectIdea3.getAuthors().add(student2Author);
projectIdea2.setProject(project);
public void testCountProjectIdeaByMatchStatus2() {
Match match1 = new Match();
match1.setProjectIdea(projectIdea1);
match1.setStatus(Match.Status.UNMATCHED);
match1.setCreatedBy(employee1);
matchDao.save(match1);
List<ProjectIdea> projectIdeas =
target.findActiveProjectIdeas(student1Author);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1 }),
projectIdeas);
Long l = new Long(1);
Assert.assertEquals(l, projectIdeaService.countProjectIdeaByMatchStatus(Match.Status.UNMATCHED));
}
/**
* A match with differing status from the queried one is saved before querying, method should return 0.
*/
@Test
@Transactional
@Rollback
public void testShouldReturnAllProjectIdeasThatHaveNotEvolvedIntoAProject() {
projectIdea1.setProject(project);
public void testCountProjectIdeaByMatchStatus3() {
Match match1 = new Match();
match1.setProjectIdea(projectIdea1);
match1.setStatus(Match.Status.UNMATCHED);
match1.setCreatedBy(employee1);
matchDao.save(match1);
List<ProjectIdea> projectIdeas = target.findUnmatchedProjectIdeas();
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2,
projectIdea3 }), projectIdeas);
Long l = new Long(0);
Assert.assertEquals(l, projectIdeaService.countProjectIdeaByMatchStatus(Match.Status.CONFIRMED));
}
@Test
@Transactional
@Rollback
public void testShouldReturnAllProjectIdeasThatHaveNotBeenMatched() {
matchDao.addPreApprovedMatch(student1, projectIdea2,
employee1Role);
List<ProjectIdea> projectIdeas = target.findUnmatchedProjectIdeas();
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1,
projectIdea3 }), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldReturnAllProjectIdeasThatHaveBeenRejected() {
Match match = matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
matchDao.changeStatus(employee1, match, Status.REJECTED);
// commented out old test below, its completely wrong
// List<ProjectIdea> projectIdeas = projectIdeaDao.findUnmatchedProjectIdeas();
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2, projectIdea3 }), projectIdeas);
params.setStatuses(rejected);
List<ProjectIdea> projectIdeas = projectIdeaDao.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2}), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldOnlyTakeLastestStatusInConcern() {
Match match = matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
match = matchDao.changeStatus(employee1, match, Status.REJECTED);
matchDao.changeStatus(employee1, match, Status.CONFIRMED);
List<ProjectIdea> projectIdeas =
projectIdeaDao.findUnmatchedProjectIdeas();
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1,
projectIdea3 }), projectIdeas);
}
// @Test
// @Transactional
// @Rollback
// public void countProjectIdeaByMatchStatusAndProjectClass() {
//
// }
@Test
@Transactional
@Rollback
public void testShouldFindAllProjectIdeasThatHaveBeenRejected() {
Match match = matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
matchDao.changeStatus(employee1, match, Status.REJECTED);
params.setStatuses(rejected);
List<ProjectIdea> projectIdeas =
projectIdeaDao.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2 }), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldFindAllProjectIdeasForAProjectClass() {
params.setProjectClasses(masters);
List<ProjectIdea> projectIdeas =
projectIdeaDao.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2 }), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldFindProjectIdeasWhereTitleContainsIdea() {
params.setTitleContains("idea");
List<ProjectIdea> projectIdeas =
projectIdeaDao.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2 }), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldFindProjectSubmittedAfterADate() {
projectIdea1.setDateCreated(date12Maj2010);
projectIdea2.setDateCreated(date15Jun2010);
projectIdea3.setDateCreated(date18Aug2010);
params.setSubmittedAfter(date14Maj2010);
List<ProjectIdea> projectIdeas =
projectIdeaDao.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2, projectIdea3 }), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldFindProjectSubmittedBeforeADate() {
projectIdea1.setDateCreated(date12Maj2010);
projectIdea2.setDateCreated(date15Jun2010);
projectIdea3.setDateCreated(date18Aug2010);
params.setSubmittedBefore(date15Jun2010);
List<ProjectIdea> projectIdeas =
projectIdeaDao.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2 }), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldFindProjectSubmittedBetweenDates() {
projectIdea1.setDateCreated(date12Maj2010);
projectIdea2.setDateCreated(date15Jun2010);
projectIdea3.setDateCreated(date18Aug2010);
params.setSubmittedBefore(date15Jun2010);
params.setSubmittedAfter(date14Maj2010);
List<ProjectIdea> projectIdeas =
projectIdeaDao.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2 }), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testFindPendingProjectIdeasThatWasMatchedLongestTimeAgo() {
Match match = matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
match = matchDao.changeStatus(employee1, match, Status.PUBLISHED);
match.setDateCreated(date18Aug2010);
match = matchDao.addPreApprovedMatch(student1, projectIdea1, employee1Role);
match = matchDao.changeStatus(employee1, match, Status.PUBLISHED);
match.setDateCreated(date15Jun2010);
List<ProjectIdea> projectIdeas =
projectIdeaDao.findTopWaitingProjects(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2 }), projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldFilterBySupervisor() {
matchDao.addPreApprovedMatch(student1, projectIdea1, employee2Role);
matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
matchDao.addPreApprovedMatch(student1, projectIdea3, employee2Role);
params.setSupervisor(employee2Role);
List<ProjectIdea> projectIdeas =
target.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea3 }),
projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldFilterBySupervisorAndStatus() {
Match match = matchDao.addPreApprovedMatch(student1, projectIdea1, employee1Role);
match = matchDao.changeStatus(employee1, match, Status.REJECTED);
matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
matchDao.addPreApprovedMatch(student1, projectIdea3, employee1Role);
params.setSupervisor(employee1Role);
params.setStatuses(rejected);
List<ProjectIdea> projectIdeas =
target.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1}),
projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldFilterByAuthor() {
projectIdea1.getAuthors().add(student1Author);
projectIdea2.getAuthors().add(student1Author);
projectIdea3.getAuthors().add(student2Author);
params.setAuthor(student1Author);
List<ProjectIdea> projectIdeas =
target.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2 }),
projectIdeas);
}
/**
* The tests below are all found in the test class for the original ProjectIdeaDao, (class TestProjectIdeaDao.java)
*/
// @Test
// @Transactional
// @Rollback
// public void testShouldReturnAllAuthorsProjectIdeasThatHaveNotEvolvedIntoAProject() {
// projectIdea3.getAuthors().add(student1Author);
// projectIdea2.setProject(project);
//
// List<ProjectIdea> projectIdeas =
// target.findActiveProjectIdeas(student1Author);
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1,
// projectIdea3 }), projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldReturnOnlyAuthorsProject() {
// projectIdea3.getAuthors().add(student2Author);
// projectIdea2.setProject(project);
//
// List<ProjectIdea> projectIdeas =
// target.findActiveProjectIdeas(student1Author);
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1 }),
// projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldReturnAllProjectIdeasThatHaveNotEvolvedIntoAProject() {
// projectIdea1.setProject(project);
//
// List<ProjectIdea> projectIdeas = target.findUnmatchedProjectIdeas();
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2,
// projectIdea3 }), projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldReturnAllProjectIdeasThatHaveNotBeenMatched() {
// matchDao.addPreApprovedMatch(student1, projectIdea2,
// employee1Role);
//
// List<ProjectIdea> projectIdeas = target.findUnmatchedProjectIdeas();
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1,
// projectIdea3 }), projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldReturnAllProjectIdeasThatHaveBeenRejected() {
// Match match = matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
// matchDao.changeStatus(employee1, match, Status.REJECTED);
//
//// commented out old test below, its completely wrong
//// List<ProjectIdea> projectIdeas = projectIdeaDao.findUnmatchedProjectIdeas();
//// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2, projectIdea3 }), projectIdeas);
//
// params.setStatuses(rejected);
// List<ProjectIdea> projectIdeas = projectIdeaDao.findProjectIdeas(params);
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2}), projectIdeas);
//
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldOnlyTakeLastestStatusInConcern() {
// Match match = matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
// match = matchDao.changeStatus(employee1, match, Status.REJECTED);
// matchDao.changeStatus(employee1, match, Status.CONFIRMED);
//
// List<ProjectIdea> projectIdeas =
// projectIdeaDao.findUnmatchedProjectIdeas();
//
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1,
// projectIdea3 }), projectIdeas);
// }
//
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFindAllProjectIdeasThatHaveBeenRejected() {
// Match match = matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
// matchDao.changeStatus(employee1, match, Status.REJECTED);
//
// params.setStatuses(rejected);
//
// List<ProjectIdea> projectIdeas =
// projectIdeaDao.findProjectIdeas(params);
//
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2 }), projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFindAllProjectIdeasForAProjectClass() {
// params.setProjectClasses(masters);
//
// List<ProjectIdea> projectIdeas =
// projectIdeaDao.findProjectIdeas(params);
//
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2 }), projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFindProjectIdeasWhereTitleContainsIdea() {
// params.setTitleContains("idea");
// List<ProjectIdea> projectIdeas =
// projectIdeaDao.findProjectIdeas(params);
//
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2 }), projectIdeas);
// }
//
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFindProjectSubmittedAfterADate() {
//
// projectIdea1.setDateCreated(date12Maj2010);
// projectIdea2.setDateCreated(date15Jun2010);
// projectIdea3.setDateCreated(date18Aug2010);
//
// params.setSubmittedAfter(date14Maj2010);
// List<ProjectIdea> projectIdeas =
// projectIdeaDao.findProjectIdeas(params);
//
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2, projectIdea3 }), projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFindProjectSubmittedBeforeADate() {
//
// projectIdea1.setDateCreated(date12Maj2010);
// projectIdea2.setDateCreated(date15Jun2010);
// projectIdea3.setDateCreated(date18Aug2010);
//
// params.setSubmittedBefore(date15Jun2010);
// List<ProjectIdea> projectIdeas =
// projectIdeaDao.findProjectIdeas(params);
//
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2 }), projectIdeas);
// }
//
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFindProjectSubmittedBetweenDates() {
//
// projectIdea1.setDateCreated(date12Maj2010);
// projectIdea2.setDateCreated(date15Jun2010);
// projectIdea3.setDateCreated(date18Aug2010);
//
// params.setSubmittedBefore(date15Jun2010);
// params.setSubmittedAfter(date14Maj2010);
// List<ProjectIdea> projectIdeas =
// projectIdeaDao.findProjectIdeas(params);
//
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2 }), projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testFindPendingProjectIdeasThatWasMatchedLongestTimeAgo() {
//
// Match match = matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
// match = matchDao.changeStatus(employee1, match, Status.PUBLISHED);
// match.setDateCreated(date18Aug2010);
//
// match = matchDao.addPreApprovedMatch(student1, projectIdea1, employee1Role);
// match = matchDao.changeStatus(employee1, match, Status.PUBLISHED);
// match.setDateCreated(date15Jun2010);
//
// List<ProjectIdea> projectIdeas =
// projectIdeaDao.findTopWaitingProjects(params);
//
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2 }), projectIdeas);
// }
//
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFilterBySupervisor() {
// matchDao.addPreApprovedMatch(student1, projectIdea1, employee2Role);
// matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
// matchDao.addPreApprovedMatch(student1, projectIdea3, employee2Role);
//
// params.setSupervisor(employee2Role);
//
// List<ProjectIdea> projectIdeas =
// target.findProjectIdeas(params);
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea3 }),
// projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFilterBySupervisorAndStatus() {
// Match match = matchDao.addPreApprovedMatch(student1, projectIdea1, employee1Role);
// match = matchDao.changeStatus(employee1, match, Status.REJECTED);
// matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
// matchDao.addPreApprovedMatch(student1, projectIdea3, employee1Role);
//
// params.setSupervisor(employee1Role);
// params.setStatuses(rejected);
// List<ProjectIdea> projectIdeas =
// target.findProjectIdeas(params);
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1}),
// projectIdeas);
// }
//
//
// @Test
// @Transactional
// @Rollback
// public void testShouldFilterByAuthor() {
// projectIdea1.getAuthors().add(student1Author);
// projectIdea2.getAuthors().add(student1Author);
// projectIdea3.getAuthors().add(student2Author);
//
// params.setAuthor(student1Author);
//
// List<ProjectIdea> projectIdeas =
// target.findProjectIdeas(params);
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea2 }),
// projectIdeas);
// }
//
// why should rejected ideas count as unmatched? makes no sense
// @Test
// @Transactional
@ -407,51 +459,51 @@ public class TestProjectIdea {
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea3}),
// projectIdeas);
// }
@Test
@Transactional
@Rollback
public void testShouldBeAbleToCombineUnmatchedsLeftJoinWithOtherJoinQueriesWithoutException() {
Match match = matchDao.addPreApprovedMatch(student1, projectIdea1, employee2Role);
match = matchDao.changeStatus(employee1, match, Status.REJECTED);
matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
params.setSupervisor(employee1Role);
ArrayList<Status> statuses = new ArrayList<Status>();
statuses.addAll(unmatched);
statuses.addAll(published);
params.setStatuses(statuses);
List<ProjectIdea> projectIdeas =
target.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2 }),
projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldNotReturnProjectIdeasThatHaveBeenTurnedIntoAProject() {
projectIdea2.setProject(project);
params.setProjectCreated(Boolean.FALSE);
List<ProjectIdea> projectIdeas =
target.findProjectIdeas(params);
Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea3 }),
projectIdeas);
}
@Test
@Transactional
@Rollback
public void testShouldContainReviewer() {
ProjectIdea pi = projectIdea1;
Employee reviewer = employee1Role;
pi.setSuggestedReviewer(reviewer);
pi = projectIdeaDao.save(pi);
Assert.assertTrue(pi.getSuggestedReviewer().equals(reviewer));
}
//
// @Test
// @Transactional
// @Rollback
// public void testShouldBeAbleToCombineUnmatchedsLeftJoinWithOtherJoinQueriesWithoutException() {
// Match match = matchDao.addPreApprovedMatch(student1, projectIdea1, employee2Role);
// match = matchDao.changeStatus(employee1, match, Status.REJECTED);
//
// matchDao.addPreApprovedMatch(student1, projectIdea2, employee1Role);
//
// params.setSupervisor(employee1Role);
//
// ArrayList<Status> statuses = new ArrayList<Status>();
// statuses.addAll(unmatched);
// statuses.addAll(published);
// params.setStatuses(statuses);
// List<ProjectIdea> projectIdeas =
// target.findProjectIdeas(params);
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea2 }),
// projectIdeas);
// }
//
//
// @Test
// @Transactional
// @Rollback
// public void testShouldNotReturnProjectIdeasThatHaveBeenTurnedIntoAProject() {
// projectIdea2.setProject(project);
//
// params.setProjectCreated(Boolean.FALSE);
//
// List<ProjectIdea> projectIdeas =
// target.findProjectIdeas(params);
// Assert.assertEquals(Arrays.asList(new ProjectIdea[] { projectIdea1, projectIdea3 }),
// projectIdeas);
// }
//
// @Test
// @Transactional
// @Rollback
// public void testShouldContainReviewer() {
// ProjectIdea pi = projectIdea1;
// Employee reviewer = employee1Role;
// pi.setSuggestedReviewer(reviewer);
// pi = projectIdeaDao.save(pi);
// Assert.assertTrue(pi.getSuggestedReviewer().equals(reviewer));
// }
}