/** * Test user parsing empty field. */ public void testParseUserWithEmptyField() { try { User.parseUser(""); fail("Should have raised an exception here"); } catch (ContainerException expected) { assertEquals("User property has empty value.", expected.getMessage()); } }
/** * Test role to users list map creation. */ public void testCreateRoleMap() { List<User> users = User.parseUsers("u1:p1:r1,r2|u2:p2:r2,r3"); Map<String, List<User>> roles = User.createRoleMap(users); assertNotNull(roles.get("r1")); assertNotNull(roles.get("r2")); assertNotNull(roles.get("r3")); assertEquals(1, roles.get("r1").size()); assertEquals("u1", roles.get("r1").get(0).getName()); assertEquals(2, roles.get("r2").size()); assertEquals("u1", roles.get("r2").get(0).getName()); assertEquals("u2", roles.get("r2").get(1).getName()); assertEquals(1, roles.get("r3").size()); assertEquals("u2", roles.get("r3").get(0).getName()); } }
/** * Test roles parsing. */ public void testParseRoles() { List<String> roles = User.parseRoles("role1,role2,role3"); assertEquals(3, roles.size()); assertEquals("role1", roles.get(0)); assertEquals("role2", roles.get(1)); assertEquals("role3", roles.get(2)); }
/** * Test multiple user parsing. */ public void testParseUsers() { User expectedUser1 = new User(); expectedUser1.setName("n1"); expectedUser1.setPassword("p1"); expectedUser1.addRole("r1"); User expectedUser2 = new User(); expectedUser2.setName("n2"); expectedUser2.setPassword("p2"); expectedUser2.addRole("r2"); List<User> users = User.parseUsers("n1:p1:r1|n2:p2:r2"); assertEquals(2, users.size()); assertEquals(expectedUser1, users.get(0)); assertEquals(expectedUser2, users.get(1)); }
/** * Test user parsing with a missing field. */ public void testParseUserWithMissingField() { try { User.parseUser("name:password:role:"); fail("Should have raised an exception here"); } catch (ContainerException expected) { assertEquals("Invalid format for [name:password:role:]", expected.getMessage()); } }
/** * Test user parsing with no roles. */ public void testParseUserWithNoRoles() { User expectedUser = new User(); expectedUser.setName("name"); expectedUser.setPassword("pwd"); User user = User.parseUser("name:pwd"); assertEquals(expectedUser, user); }
/** * Test user parsing. */ public void testParseUserWithWhitespace() { User expectedUser = new User(); expectedUser.setName("name"); expectedUser.setPassword("pwd"); expectedUser.addRole("role"); User user = User.parseUser("\n\t name:pwd:role"); assertEquals(expectedUser, user); }
/** * Test user parsing with empty password. */ public void testParseUserWithEmptyPassword() { User expectedUser = new User(); expectedUser.setName("name"); expectedUser.setPassword(""); expectedUser.addRole("role"); User user = User.parseUser("name::role"); assertEquals(expectedUser, user); }
/** * Test user parsing. */ public void testParseUser() { User expectedUser = new User(); expectedUser.setName("name"); expectedUser.setPassword("pwd"); expectedUser.addRole("role"); User user = User.parseUser("name:pwd:role"); assertEquals(expectedUser, user); }