package de.flower.rmt.service; import de.flower.rmt.model.db.entity.Team; import de.flower.rmt.test.AbstractRMTIntegrationTests; import org.springframework.transaction.TransactionStatus; import org.testng.annotations.Test; import javax.validation.ConstraintViolation; import javax.validation.ConstraintViolationException; import java.util.ArrayList; import java.util.List; import java.util.Set; import static org.testng.Assert.*; /** * @author flowerrrr */ public class TeamManagerTest extends AbstractRMTIntegrationTests { @Test public void testSave() { Team entity = new Team(testData.getClub()); entity.setName("Foo Bar"); teamManager.save(entity); Long id = entity.getId(); entity = teamRepo.findOne(id); log.info("" + entity); TransactionStatus status = transactionManager.getTransaction(null); entity = teamRepo.findOne(id); teamRepo.delete(entity); transactionManager.commit(status); entity = teamRepo.findOne(id); assertTrue(entity == null); } @Test public void testValidation() { Team entity = new Team(testData.getClub()); try { teamManager.save(entity); fail("Expected exception was not thrown"); } catch (ConstraintViolationException e) { } entity.setName(" "); Set<ConstraintViolation<Team>> violations = validator.validate(entity); assertEquals(1, violations.size()); ConstraintViolation<Team> violation = new ArrayList<ConstraintViolation<Team>>(violations).get(0); assertEquals(entity.getName(), violation.getInvalidValue()); log.info("" + violation.getConstraintDescriptor()); } @Test public void testDelete() { List<Team> teams = teamManager.findAll(); for (Team team : teams) { teamManager.delete(team.getId()); Team deletedTeam = teamManager.loadById(team.getId()); assertTrue(deletedTeam.isDeleted()); } assertTrue(teamManager.findAll().isEmpty()); } }