package com.globant.katari.sample.time.application; import java.util.Date; import junit.framework.TestCase; import com.globant.katari.sample.testsupport.DataHelper; import com.globant.katari.sample.testsupport.SpringTestUtils; import com.globant.katari.sample.time.domain.TimeEntry; import com.globant.katari.sample.time.domain.TimeRepository; import com.globant.katari.user.domain.User; import com.globant.katari.user.domain.UserRepository; /** This class represents a TestCase of the delete time entry commnad. */ public class DeleteTimeEntryCommandTest extends TestCase { /** The delete time entry command. */ private DeleteTimeEntryCommand deleteTimeEntryCommand; /** The time entry repository. */ private TimeRepository timeRepository; /** The user repository. */ private UserRepository userRepository; /** The user of the time entry. */ private User user; /** This is a set up method of this TestCase. */ public void setUp() { deleteTimeEntryCommand = (DeleteTimeEntryCommand) SpringTestUtils .getTimeModuleBeanFactory().getBean("deleteTimeEntryCommand"); timeRepository = (TimeRepository) SpringTestUtils .getTimeModuleBeanFactory().getBean("timeRepository"); userRepository = (UserRepository) SpringTestUtils.get().getBeanFactory() .getBean("user.userRepository"); DataHelper.removeExtraTimeEntries(timeRepository); user = userRepository.findUserByName("admin"); DataHelper.createTimeEntry(timeRepository, user); } /** Test the execute method. */ public void testExecute() { TimeEntry timeEntry; timeEntry = timeRepository.getTimeEntries(user, new Date()).get(0); long timeEntryId = timeEntry.getId(); assertNotNull(timeRepository.findTimeEntry(timeEntryId)); deleteTimeEntryCommand.setTimeEntryId(timeEntryId); deleteTimeEntryCommand.execute(); assertNull(timeRepository.findTimeEntry(timeEntryId)); } }