1   package com.atlassian.user.impl.hibernate;
2   
3   import com.atlassian.user.*;
4   import com.atlassian.user.generic.AbstractSpringTest;
5   
6   public class TestExternalEntityDAO extends AbstractSpringTest
7   {
8       protected ExternalEntityDAO externalEntityDao;
9   
10      public void setExternalEntityDao(ExternalEntityDAO externalEntityDao)
11      {
12          this.externalEntityDao = externalEntityDao;
13      }
14  
15      public ExternalEntityDAO getExternalEntityDao()
16      {
17          return externalEntityDao;
18      }
19  
20      protected String[] getConfigLocations()
21      {
22          return new String[]{
23              "classpath:com/atlassian/user/impl/hibernate/hibernateTestContext.xml",
24              "classpath:com/atlassian/user/dataSourceTestContext.xml",
25          };
26      }
27  
28      public void testAddExternalEntity()
29      {
30          DefaultHibernateExternalEntity entity = new DefaultHibernateExternalEntity();
31          entity.setName("user");
32          entity.setType(User.class.getName());
33  
34          getExternalEntityDao().saveExternalEntity(entity);
35          ExternalEntity testExternalEntity = getExternalEntityDao().getExternalEntity("user");
36          assertEquals(entity, testExternalEntity);
37      }
38  
39      public void testCreatExternalEntity()
40      {
41          ExternalEntity entity = getExternalEntityDao().createExternalEntity("user");
42          ExternalEntity testExternalEntity = getExternalEntityDao().getExternalEntity("user");
43          assertEquals(entity, testExternalEntity);
44      }
45  
46  
47      public void testRemoveExternalEntity()
48      {
49          DefaultHibernateExternalEntity entity = new DefaultHibernateExternalEntity();
50          entity.setName("user");
51          entity.setType(User.class.getName());
52  
53          getExternalEntityDao().saveExternalEntity(entity);
54          ExternalEntity testExternalEntity = getExternalEntityDao().getExternalEntity("user");
55          assertEquals(entity, testExternalEntity);
56  
57          getExternalEntityDao().removeExternalEntity("user");
58          testExternalEntity = getExternalEntityDao().getExternalEntity("user");
59          assertNull(testExternalEntity);
60      }
61  
62  }