X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=security%2Fimpl%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fsecurity%2Fauthorization%2FAuthorizationServiceTest.java;h=8be34f9da74d5204f4c5275984f5be6a77161f8d;hb=c0b4c533c09bd084f911c426de2c59a5f814b14d;hp=78cf3f5982e89291504528a8d07131708f0c1d8d;hpb=4565fa62b5e77ce0ffbac381bc0ef1813da94af7;p=utils diff --git a/security/impl/src/test/java/org/wamblee/security/authorization/AuthorizationServiceTest.java b/security/impl/src/test/java/org/wamblee/security/authorization/AuthorizationServiceTest.java index 78cf3f59..8be34f9d 100644 --- a/security/impl/src/test/java/org/wamblee/security/authorization/AuthorizationServiceTest.java +++ b/security/impl/src/test/java/org/wamblee/security/authorization/AuthorizationServiceTest.java @@ -27,11 +27,11 @@ import org.wamblee.usermgt.UserAccessor; * @author Erik Brakkee */ public class AuthorizationServiceTest extends TestCase { - private AuthorizationRule rule1; + private AbstractAuthorizationRule rule1; - private AuthorizationRule rule2; + private AbstractAuthorizationRule rule2; - private AuthorizationRule rule3; + private AbstractAuthorizationRule rule3; private AuthorizationService service; @@ -80,13 +80,15 @@ public class AuthorizationServiceTest extends TestCase { return service; } - protected AuthorizationRule createRule(AuthorizationResult aResult, + protected AbstractAuthorizationRule createRule(AuthorizationResult aResult, String aGroup, String aPath, Class aOperation) { return new TestAuthorizationRule(aResult, aGroup, aPath, aOperation); } protected void checkMatchCount(int aCount, AuthorizationRule aRule) { - assertEquals(aCount, ((TestAuthorizationRule) aRule).getMatchCount()); + TestAuthorizationRule testRule = (TestAuthorizationRule) aRule; + assertEquals(aCount, testRule.getMatchCount()); + testRule.reset(); } protected Object createResource(String aPath) { @@ -103,18 +105,18 @@ public class AuthorizationServiceTest extends TestCase { public void testFirstRuleGrants() { assertTrue(service.isAllowed(createResource("/oni/xyz.jpg"), new ReadOperation())); - checkMatchCount(1, rule1); + checkMatchCount(1, service.getRules()[0]); assertTrue(service.isAllowed(createResource("/oni/xyz.jpg"), new WriteOperation())); - checkMatchCount(2, rule1); + checkMatchCount(1, service.getRules()[0]); assertTrue(service.isAllowed(createResource("/oni/xyz.jpg"), new DeleteOperation())); - checkMatchCount(3, rule1); + checkMatchCount(1, service.getRules()[0]); assertTrue(service.isAllowed(createResource("/oni/xyz.jpg"), new CreateOperation())); - checkMatchCount(4, rule1); - checkMatchCount(0, rule2); - checkMatchCount(0, rule3); + checkMatchCount(1, service.getRules()[0]); + checkMatchCount(0, service.getRules()[1]); + checkMatchCount(0, service.getRules()[2]); } /** @@ -124,9 +126,9 @@ public class AuthorizationServiceTest extends TestCase { public void testSecondRuleDenies() { assertFalse(service.isAllowed(createResource("/abc/xyz.jpg"), new ReadOperation())); - checkMatchCount(0, rule1); - checkMatchCount(1, rule2); - checkMatchCount(0, rule3); + checkMatchCount(0, service.getRules()[0]); + checkMatchCount(1, service.getRules()[1]); + checkMatchCount(0, service.getRules()[2]); } /** @@ -136,9 +138,9 @@ public class AuthorizationServiceTest extends TestCase { public void testThirdRuleGrants() { assertTrue(service.isAllowed(createResource("/abc/xyz.jpg"), new WriteOperation())); - checkMatchCount(0, rule1); - checkMatchCount(0, rule2); - checkMatchCount(1, rule3); + checkMatchCount(0, service.getRules()[0]); + checkMatchCount(0, service.getRules()[1]); + checkMatchCount(1, service.getRules()[2]); } /** @@ -182,8 +184,8 @@ public class AuthorizationServiceTest extends TestCase { public void testNoRulesSupportResource() { assertFalse(service.isAllowed(createResource("/xyxyxyxy"), new ReadOperation())); - checkMatchCount(0, rule1); - checkMatchCount(0, rule2); - checkMatchCount(0, rule3); + checkMatchCount(0, service.getRules()[0]); + checkMatchCount(0, service.getRules()[1]); + checkMatchCount(0, service.getRules()[2]); } }