1 package fr.ifremer.dali.dao.administration.user;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 import fr.ifremer.dali.service.DaliServiceLocator;
27 import fr.ifremer.quadrige3.core.test.AbstractDaoTest;
28 import fr.ifremer.dali.dao.DaliDatabaseResource;
29 import fr.ifremer.dali.dto.referential.DepartmentDTO;
30 import fr.ifremer.dali.service.StatusFilter;
31 import org.apache.commons.lang3.builder.ToStringBuilder;
32 import org.apache.commons.lang3.builder.ToStringStyle;
33 import org.apache.commons.logging.Log;
34 import org.apache.commons.logging.LogFactory;
35 import org.junit.Before;
36 import org.junit.ClassRule;
37 import org.junit.Test;
38 import org.springframework.dao.DataRetrievalFailureException;
39
40 import java.util.List;
41
42 import static org.junit.Assert.*;
43
44 public class DepartmentDaoReadTest extends AbstractDaoTest {
45
46 private static final Log log = LogFactory.getLog(DepartmentDaoReadTest.class);
47
48 @ClassRule
49 public static final DaliDatabaseResource dbResource = DaliDatabaseResource.readDb();
50
51 private DaliDepartmentDao departmentDao;
52
53 @Before
54 @Override
55 public void setUp() throws Exception {
56 super.setUp();
57 departmentDao = DaliServiceLocator.instance().getService("daliDepartmentDao", DaliDepartmentDao.class);
58 }
59
60 @Test
61 public void getAllDepartment() {
62 List<DepartmentDTO> departments = departmentDao.getAllDepartments(StatusFilter.ACTIVE.toStatusCodes());
63 assertNotNull(departments);
64 assertEquals(12, departments.size());
65
66 if (log.isDebugEnabled()) {
67 for (DepartmentDTO program : departments) {
68 log.debug(ToStringBuilder.reflectionToString(program, ToStringStyle.SHORT_PREFIX_STYLE));
69 }
70 }
71
72 DepartmentDTO department = departmentDao.getDepartmentById(3);
73 assertNotNull(department);
74 assertEquals("PDG-RBE", department.getCode());
75
76 try {
77 departmentDao.getDepartmentById(15);
78 fail("should throw DataRetrievalFailureException");
79 } catch (DataRetrievalFailureException ex) {
80 assertNotNull(ex);
81 }
82
83 }
84
85 }