1 package com.atlassian.user.impl.delegation;
2
3 import com.atlassian.user.User;
4 import com.atlassian.user.UserManager;
5 import com.atlassian.user.generic.AbstractTestUserManager;
6
7 import java.util.ArrayList;
8 import java.util.Iterator;
9
10 public class TestDelegatingUserManagerWithHibernateAndOSUser extends AbstractTestUserManager
11 {
12 protected UserManager osuUserManager;
13 protected UserManager hibernateUserManager;
14
15 protected String[] getConfigLocations()
16 {
17 return new String[]{
18 "classpath:com/atlassian/user/impl/osuser/osuserTestContext.xml",
19 "classpath:com/atlassian/user/impl/hibernate/hibernateTestContext.xml",
20 "classpath:com/atlassian/user/dataSourceTestContext.xml"
21 };
22 }
23
24 public void setOsuUserManager(UserManager osuUserManager)
25 {
26 this.osuUserManager = osuUserManager;
27 }
28
29 public void setHibernateUserManager(UserManager hibernateUserManager)
30 {
31 this.hibernateUserManager = hibernateUserManager;
32 }
33
34 protected void onTearDown() throws Exception
35 {
36 for (Iterator<User> i = osuUserManager.getUsers().iterator(); i.hasNext();)
37 {
38 User user = i.next();
39 osuUserManager.removeUser(user);
40 }
41 super.onTearDown();
42 }
43
44
45 protected UserManager getUserManager()
46 {
47 ArrayList<UserManager> list = new ArrayList<UserManager>();
48 list.add(hibernateUserManager);
49 list.add(osuUserManager);
50 return new DelegatingUserManager(list);
51 }
52 }