1 24 25 package org.objectweb.cjdbc.scenario.standalone.authentication; 26 27 import org.objectweb.cjdbc.common.users.AdminUser; 28 import org.objectweb.cjdbc.common.users.DatabaseBackendUser; 29 import org.objectweb.cjdbc.common.users.VirtualDatabaseUser; 30 import org.objectweb.cjdbc.controller.authentication.AuthenticationManager; 31 import org.objectweb.cjdbc.controller.authentication.AuthenticationManagerException; 32 import org.objectweb.cjdbc.scenario.templates.NoTemplate; 33 34 40 public class AuthenticationManagerTest extends NoTemplate 41 { 42 43 private AuthenticationManager manager; 44 45 46 private VirtualDatabaseUser virtualUser1, 47 virtualUser2, 48 virtualUser3, 49 virtualUser4; 50 51 52 private AdminUser adminUser1,adminUser2,adminUser3,adminUser4; 53 54 55 private DatabaseBackendUser realUser1, realUser2, realUser3, realUser4; 56 57 60 protected void setUp() 61 { 62 virtualUser1 = new VirtualDatabaseUser("virtualLogin1", "userPassword1"); 64 virtualUser2 = new VirtualDatabaseUser("virtualLogin2", "userPassword2"); 65 virtualUser3 = new VirtualDatabaseUser("virtualLogin3", "userPassword3"); 66 virtualUser4 = new VirtualDatabaseUser("virtualLogin4", "userPassword4"); 67 68 adminUser1 = new AdminUser("admin1","admin"); 70 adminUser2 = new AdminUser("admin2","admin"); 71 adminUser3 = new AdminUser("admin3","admin"); 72 adminUser4 = new AdminUser("admin4","admin"); 73 74 realUser1 = 76 new DatabaseBackendUser("backend1", "realLogin1", "userPassword1"); 77 realUser2 = 78 new DatabaseBackendUser("backend1", "realLogin2", "userPassword2"); 79 realUser3 = 80 new DatabaseBackendUser("backend2", "realLogin3", "userPassword3"); 81 realUser4 = 82 new DatabaseBackendUser("backend2", "realLogin4", "userPassword4"); 83 84 manager = new AuthenticationManager(); 86 } 87 88 91 public void testIsValidAdminUser() 92 { 93 assertFalse(manager.isValidAdminUser(adminUser1)); 95 assertFalse(manager.isValidAdminUser(adminUser2)); 96 assertFalse(manager.isValidAdminUser(adminUser3)); 97 assertFalse(manager.isValidAdminUser(adminUser4)); 98 99 manager.addAdminUser(adminUser1); 101 assertTrue(manager.isValidAdminUser(adminUser1)); 102 assertFalse(manager.isValidAdminUser(adminUser2)); 103 assertFalse(manager.isValidAdminUser(adminUser3)); 104 assertFalse(manager.isValidAdminUser(adminUser4)); 105 106 manager.addAdminUser(adminUser2); 108 assertTrue(manager.isValidAdminUser(adminUser1)); 109 assertTrue(manager.isValidAdminUser(adminUser2)); 110 assertFalse(manager.isValidAdminUser(adminUser3)); 111 assertFalse(manager.isValidAdminUser(adminUser4)); 112 } 113 114 117 public void testIsValidVirtualUser() 118 { 119 manager.addVirtualUser(virtualUser1); 121 manager.addVirtualUser(virtualUser2); 122 123 assertTrue(manager.isValidVirtualUser(virtualUser1)); 124 assertTrue(manager.isValidVirtualUser(virtualUser2)); 125 assertFalse(manager.isValidVirtualUser(virtualUser3)); 126 assertFalse(manager.isValidVirtualUser(virtualUser4)); 127 } 128 129 132 public void testIsValidVirtualLogin() 133 { 134 manager.addVirtualUser(virtualUser1); 136 manager.addVirtualUser(virtualUser2); 137 138 assertTrue(manager.isValidVirtualLogin("virtualLogin1")); 139 assertTrue(manager.isValidVirtualLogin("virtualLogin2")); 140 assertFalse(manager.isValidVirtualLogin("virtualLogin3")); 141 assertFalse(manager.isValidVirtualLogin("virtualLogin4")); 142 } 143 144 148 public void testAddRealUser() 149 { 150 try 151 { 152 manager.addRealUser("virtualLogin1", realUser1); 155 manager.addRealUser("virtualLogin1", realUser3); 156 157 manager.addRealUser("virtualLogin2", realUser2); 159 } 160 catch (AuthenticationManagerException e) 161 { 162 fail("Exception thrown: " + e); 163 } 164 165 assertEquals( 166 realUser1, 167 manager.getDatabaseBackendUser("virtualLogin1", "backend1")); 168 assertEquals( 169 realUser3, 170 manager.getDatabaseBackendUser("virtualLogin1", "backend2")); 171 assertEquals( 172 realUser2, 173 manager.getDatabaseBackendUser("virtualLogin2", "backend1")); 174 assertNull(manager.getDatabaseBackendUser("virtualLogin2", "backend2")); 175 176 try 179 { 180 manager.addRealUser("virtualLogin2", realUser1); 181 fail("Exception not thrown while trying to add two real users on the same backend for the same virtual login"); 182 } 183 catch (AuthenticationManagerException e) 184 { 185 } 186 187 try 189 { 190 manager.addRealUser("virtualLogin2", realUser4); 191 } 192 catch (AuthenticationManagerException e) 193 { 194 fail("Exception thrown: " + e); 195 } 196 197 assertEquals( 198 realUser1, 199 manager.getDatabaseBackendUser("virtualLogin1", "backend1")); 200 assertEquals( 201 realUser3, 202 manager.getDatabaseBackendUser("virtualLogin1", "backend2")); 203 assertEquals( 204 realUser2, 205 manager.getDatabaseBackendUser("virtualLogin2", "backend1")); 206 assertEquals( 207 realUser4, 208 manager.getDatabaseBackendUser("virtualLogin2", "backend2")); 209 } 210 } | Popular Tags |