fix unstable build

This commit is contained in:
Sebastian Sdorra
2011-02-15 18:47:04 +01:00
parent 95d1d206fb
commit ac0c127af5

View File

@@ -37,10 +37,7 @@ package sonia.scm.repository;
import org.junit.Test; import org.junit.Test;
import sonia.scm.repository.Permission; import sonia.scm.security.ScmSecurityException;
import sonia.scm.repository.PermissionType;
import sonia.scm.repository.PermissionUtil;
import sonia.scm.repository.Repository;
import sonia.scm.user.User; import sonia.scm.user.User;
import sonia.scm.web.security.WebSecurityContext; import sonia.scm.web.security.WebSecurityContext;
@@ -87,7 +84,7 @@ public class PermissionUtilTest
* Method description * Method description
* *
*/ */
@Test(expected = IllegalStateException.class) @Test(expected = ScmSecurityException.class)
public void assertFailedPermissionTest() public void assertFailedPermissionTest()
{ {
PermissionUtil.assertPermission(repository, dent, PermissionType.WRITE); PermissionUtil.assertPermission(repository, dent, PermissionType.WRITE);
@@ -119,8 +116,7 @@ public class PermissionUtilTest
public void testGroupPermissions() public void testGroupPermissions()
{ {
WebSecurityContext dent = mockGroupCtx(new User("dent", "Arthur Dent", WebSecurityContext dent = mockGroupCtx(new User("dent", "Arthur Dent",
"arthur.dent@hitchhiker.com"), "arthur.dent@hitchhiker.com"), "devel", "qa");
"devel", "qa");
WebSecurityContext ford = mockGroupCtx(new User("ford", "Ford Prefect", WebSecurityContext ford = mockGroupCtx(new User("ford", "Ford Prefect",
"ford.prefect@hitchhiker.com"), "devel"); "ford.prefect@hitchhiker.com"), "devel");
WebSecurityContext zaphod = mockGroupCtx(new User("zaphod", WebSecurityContext zaphod = mockGroupCtx(new User("zaphod",
@@ -137,25 +133,32 @@ public class PermissionUtilTest
new Permission("dent"), new Permission("dent"),
new Permission("devel", PermissionType.WRITE, true), new Permission("devel", PermissionType.WRITE, true),
new Permission("qa", PermissionType.READ, true)))); new Permission("qa", PermissionType.READ, true))));
// member of both devel and qa // member of both devel and qa
assertTrue(PermissionUtil.hasPermission(r, dent, PermissionType.READ)); assertTrue(PermissionUtil.hasPermission(r, dent, PermissionType.READ));
assertTrue(PermissionUtil.hasPermission(r, dent, PermissionType.WRITE)); assertTrue(PermissionUtil.hasPermission(r, dent, PermissionType.WRITE));
assertFalse(PermissionUtil.hasPermission(r, dent, PermissionType.OWNER)); assertFalse(PermissionUtil.hasPermission(r, dent, PermissionType.OWNER));
// now, additionally the owner // now, additionally the owner
r.getPermissions().add(new Permission("dent", PermissionType.OWNER)); r.getPermissions().add(new Permission("dent", PermissionType.OWNER));
assertTrue(PermissionUtil.hasPermission(r, dent, PermissionType.OWNER)); assertTrue(PermissionUtil.hasPermission(r, dent, PermissionType.OWNER));
// member of just devel // member of just devel
assertTrue(PermissionUtil.hasPermission(r, ford, PermissionType.READ)); assertTrue(PermissionUtil.hasPermission(r, ford, PermissionType.READ));
assertTrue(PermissionUtil.hasPermission(r, ford, PermissionType.WRITE)); assertTrue(PermissionUtil.hasPermission(r, ford, PermissionType.WRITE));
assertFalse(PermissionUtil.hasPermission(r, ford, PermissionType.OWNER)); assertFalse(PermissionUtil.hasPermission(r, ford, PermissionType.OWNER));
// member of just qa // member of just qa
assertTrue(PermissionUtil.hasPermission(r, zaphod, PermissionType.READ)); assertTrue(PermissionUtil.hasPermission(r, zaphod, PermissionType.READ));
assertFalse(PermissionUtil.hasPermission(r, zaphod, PermissionType.WRITE)); assertFalse(PermissionUtil.hasPermission(r, zaphod, PermissionType.WRITE));
assertFalse(PermissionUtil.hasPermission(r, zaphod, PermissionType.OWNER)); assertFalse(PermissionUtil.hasPermission(r, zaphod, PermissionType.OWNER));
// member of no groups // member of no groups
assertFalse(PermissionUtil.hasPermission(r, trillian, PermissionType.READ)); assertFalse(PermissionUtil.hasPermission(r, trillian, PermissionType.READ));
assertFalse(PermissionUtil.hasPermission(r, trillian, PermissionType.WRITE)); assertFalse(PermissionUtil.hasPermission(r, trillian,
assertFalse(PermissionUtil.hasPermission(r, trillian, PermissionType.OWNER)); PermissionType.WRITE));
assertFalse(PermissionUtil.hasPermission(r, trillian,
PermissionType.OWNER));
} }
//~--- get methods ---------------------------------------------------------- //~--- get methods ----------------------------------------------------------
@@ -217,14 +220,15 @@ public class PermissionUtilTest
* *
* *
* @param user * @param user
* @param groups
* *
* @return * @return
*/ */
private WebSecurityContext mockGroupCtx(User user, String... groups) private WebSecurityContext mockGroupCtx(User user, String... groups)
{ {
WebSecurityContext context = mockCtx(user); WebSecurityContext context = mockCtx(user);
Set<String> groupSet = new HashSet<String>(Arrays.asList(groups)); Set<String> groupSet = new HashSet<String>(Arrays.asList(groups));
when(context.getGroups()).thenReturn(groupSet); when(context.getGroups()).thenReturn(groupSet);
return context; return context;