@Test
public void testCascadeDeleteOrgnizationAndJob() {
User user = createDefaultUser();
Organization organization1 = new Organization();
organization1.setName("test1");
Organization organization2 = new Organization();
organization2.setName("test2");
organizationService.save(organization1);
organizationService.save(organization2);
Job job1 = new Job();
job1.setName("test1");
Job job2 = new Job();
job2.setName("test2");
jobService.save(job1);
jobService.save(job2);
user.addOrganizationJob(new UserOrganizationJob(organization1.getId(), null));
user.addOrganizationJob(new UserOrganizationJob(organization2.getId(), job1.getId()));
user.addOrganizationJob(new UserOrganizationJob(organization2.getId(), job2.getId()));
userService.update(user);
clear();
user = userService.findOne(user.getId());
user.getOrganizationJobs().remove(0);
userService.update(user);
clear();
user = userService.findOne(user.getId());
Assert.assertEquals(2, user.getOrganizationJobs().size());
Assert.assertEquals(organization2.getId(), user.getOrganizationJobs().get(0).getOrganizationId());
Assert.assertEquals(organization2.getId(), user.getOrganizationJobs().get(1).getOrganizationId());
}