MCPcopy Create free account
hub / github.com/castello/spring_basic / UserDaoImplTest

Class UserDaoImplTest

ch4/UserDaoImplTest.java:15–99  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13import static org.junit.Assert.*;
14
15@RunWith(SpringJUnit4ClassRunner.class)
16@ContextConfiguration(locations = {"file:src/main/webapp/WEB-INF/spring/**/root-context.xml"})
17public class UserDaoImplTest {
18 @Autowired
19 UserDao userDao;
20 Calendar cal;
21
22 @Before // 각 테스트가 수행되기 직전에 이 메서드가 실행된다.
23 public void init() {
24 cal = Calendar.getInstance();
25 cal.clear();
26 cal.set(2021, 1, 1);
27 }
28
29 @Test(expected = Exception.class) // 예외가 발생해야 테스트 통과
30 public void insertUser() throws Exception {
31 userDao.deleteAll();
32 assertTrue(userDao.count()==0);
33
34 User user = new User("asdf", "1234", "abc", "aaa@aaa.com", new Date(cal.getTimeInMillis()), "fb", new Date());
35 assertTrue(userDao.insertUser(user)==1);
36 assertTrue(userDao.count()==1);
37
38 User user2 = userDao.selectUser(user.getId());
39 assertTrue(user.equals(user2));
40
41 User user3 = new User("asdf222", "1234", "abc", "aaa@aaa.com", new Date(cal.getTimeInMillis()), "fb", new Date());
42 assertTrue(userDao.insertUser(user3)==1);
43 assertTrue(userDao.count()==2);
44
45 // 같은 데이터를 2번 입력하고 예외가 발생하는지 테스트
46 userDao.insertUser(user); // java.sql.SQLIntegrityConstraintViolationException예외발생. Duplicate entry 'asdf' for key 'PRIMARY'
47 }
48
49 @Test
50 public void deleteUser() throws Exception {
51 userDao.deleteAll();
52 assertTrue(userDao.count()==0);
53
54 User user = new User("asdf", "1234", "abc", "aaa@aaa.com", new Date(cal.getTimeInMillis()), "fb", new Date());
55 assertTrue(userDao.insertUser(user)==1);
56 assertTrue(userDao.count()==1);
57
58 User user2 = userDao.selectUser(user.getId());
59 assertTrue(user.equals(user2));
60 assertTrue(userDao.deleteUser(user.getId())==1);
61
62 user = userDao.selectUser("asdf");
63 assertTrue(user==null);
64 assertTrue(userDao.count()==0);
65 }
66
67 @Test
68 public void selectUser() throws Exception {
69 userDao.deleteAll();
70 assertTrue(userDao.count()==0);
71
72 User user = new User("asdf", "1234", "abc", "aaa@aaa.com", new Date(cal.getTimeInMillis()), "fb", new Date());

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected