View Javadoc
1   package org.itracker.persistence.dao;
2   
3   import org.itracker.AbstractDependencyInjectionTest;
4   import org.itracker.model.Permission;
5   import org.itracker.model.Project;
6   import org.itracker.model.User;
7   import org.junit.Test;
8   import org.springframework.dao.DataAccessException;
9   
10  import java.util.List;
11  
12  public class PermissionDAOImplIT extends AbstractDependencyInjectionTest {
13  
14      @SuppressWarnings("unused")
15      private UserDAO userDAO;
16      @SuppressWarnings("unused")
17      private ProjectDAO projectDAO;
18      private PermissionDAO permissionDAO;
19  
20      @Test
21      public void testFindByUserId() {
22  
23          List<Permission> permissions = permissionDAO.findByUserId(2);
24  
25          assertNotNull("permissions", permissions);
26          assertEquals(3, permissions.size());
27  
28      }
29  
30      // TODO: fix implementation or test
31      @Test
32      public void testFailedFindByUserId() {
33  
34          try {
35              List<Permission> permissions = permissionDAO.findByUserId(-1);
36              fail("Should have thrown a DataAccessException. Size of list:"
37                      + permissions.size());
38          } catch (DataAccessException e) {
39              // Expected behavior
40          }
41      }
42  
43      @Test
44      public void testCreatePermission() {
45  
46          Permission foundPermission = permissionDAO.findByUserId(2).get(1);
47          User foundUser = foundPermission.getUser();
48          Project foundProject = foundPermission.getProject();
49  
50          assertNotNull(foundPermission);
51          assertNotNull(foundUser);
52          assertNotNull(foundProject);
53          assertEquals(2, foundPermission.getPermissionType().intValue());
54          assertEquals("admin_test1", foundUser.getLogin());
55          assertEquals("test_name", foundProject.getName());
56  
57      }
58  
59      @Override
60      public void onSetUp() throws Exception {
61          super.onSetUp();
62          userDAO = (UserDAO) applicationContext.getBean("userDAO");
63          projectDAO = (ProjectDAO) applicationContext.getBean("projectDAO");
64          permissionDAO = (PermissionDAO) applicationContext
65                  .getBean("permissionDAO");
66      }
67  
68      protected String[] getDataSetFiles() {
69          return new String[]{
70                  "dataset/userpreferencesbean_dataset.xml",
71                  "dataset/userbean_dataset.xml",
72                  "dataset/projectbean_dataset.xml",
73                  "dataset/permissionbean_dataset.xml"};
74      }
75  
76      protected String[] getConfigLocations() {
77          return new String[]{"application-context.xml"};
78      }
79  
80  }