1 package fr.ifremer.dali.dao.referential.taxon;
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
27 import fr.ifremer.dali.dao.DaliDatabaseResource;
28 import fr.ifremer.dali.dto.referential.TaxonGroupDTO;
29 import fr.ifremer.dali.service.DaliServiceLocator;
30 import fr.ifremer.quadrige3.core.test.AbstractDaoTest;
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 TaxonGroupDaoReadTest extends AbstractDaoTest {
45
46 private static final Log log = LogFactory.getLog(TaxonGroupDaoReadTest.class);
47
48 @ClassRule
49 public static final DaliDatabaseResource dbResource = DaliDatabaseResource.readDb();
50
51 private DaliTaxonGroupDao dao;
52
53 @Before
54 @Override
55 public void setUp() throws Exception {
56 super.setUp();
57 dao = DaliServiceLocator.instance().getService("daliTaxonGroupDao", DaliTaxonGroupDao.class);
58 }
59
60 @Test
61 public void getAllTaxonGroupDTOs() {
62 List<TaxonGroupDTO> TaxonGroupDTOs = dao.getAllTaxonGroups();
63 assertNotNull(TaxonGroupDTOs);
64 assertEquals(7, TaxonGroupDTOs.size());
65
66 if (log.isDebugEnabled()) {
67 for (TaxonGroupDTO dto : TaxonGroupDTOs) {
68 log.debug(ToStringBuilder.reflectionToString(dto, ToStringStyle.SHORT_PREFIX_STYLE));
69 }
70 }
71
72 for (TaxonGroupDTO TaxonGroupDTO : TaxonGroupDTOs) {
73
74 if (TaxonGroupDTO.getId() == 6) {
75 assertNotNull(TaxonGroupDTO.getTaxons());
76 assertEquals(2, TaxonGroupDTO.sizeTaxons());
77
78 }
79 else if (TaxonGroupDTO.getId() == 2) {
80 assertNotNull(TaxonGroupDTO.getTaxons());
81 assertEquals(0, TaxonGroupDTO.sizeTaxons());
82 }
83 }
84 }
85
86 @Test
87 public void getTaxonGroupDTOById() {
88 TaxonGroupDTO TaxonGroupDTO = dao.getTaxonGroupById(2);
89 assertNotNull(TaxonGroupDTO);
90 assertEquals("Carnivore", TaxonGroupDTO.getName());
91
92 try {
93 dao.getTaxonGroupById(20);
94 fail("should throw a DataRetrievalFailureException");
95 } catch (DataRetrievalFailureException ex) {
96 assertNotNull(ex);
97 }
98 }
99
100 }