package org.synyx.hades.sample.dao; import static org.junit.Assert.*; import java.util.List; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.transaction.annotation.Transactional; import org.synyx.hades.sample.dao.simple.SimpleUserDao; import org.synyx.hades.sample.domain.User; /** * Intergration test showing the basic usage of {@link SimpleUserDao}. * * @author Oliver Gierke - gierke@synyx.de */ @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = "classpath:simple-dao-context.xml") @Transactional public class HadesSimpleUserDaoSample { @Autowired private SimpleUserDao userDao; private User user; @Before public void setUp() { user = new User(); user.setUsername("foobar"); user.setFirstname("firstname"); user.setLastname("lastname"); } /** * Tests inserting a user and asserts it can be loaded again. */ @Test public void testInsert() { user = userDao.save(user); assertEquals(user, userDao.readByPrimaryKey(user.getId())); } @Test public void foo() throws Exception { user = userDao.save(user); List<User> users = userDao.findByLastname("lastname"); assertNotNull(users); assertTrue(users.contains(user)); } @Test public void testname() throws Exception { user = userDao.save(user); List<User> users = userDao.findByFirstnameOrLastname("lastname"); assertTrue(users.contains(user)); } }