public void testCheckOutPolicy() throws Exception { String permission = WRITE; String[] permissions = {WRITE, WRITE_PROPERTIES}; MockDocument doc = new MockDocument("uuid1", null); doc.checkedout = true; assertSame( UNKNOWN, service.checkPermission(doc, null, creatorPrincipal, permission, permissions, null)); doc.checkedout = false; assertSame( UNKNOWN, service.checkPermission(doc, null, creatorPrincipal, permission, permissions, null)); deployContrib(CORE_TESTS_BUNDLE, "OSGI-INF/test-security-policy2-contrib.xml"); assertSame( DENY, service.checkPermission(doc, null, creatorPrincipal, permission, permissions, null)); }
public void testPolicies() throws Exception { String permission = WRITE; String[] permissions = {WRITE}; Document doc = new MockDocument("Test", creator); // without lock assertSame( UNKNOWN, service.checkPermission(doc, null, creatorPrincipal, permission, permissions, null)); assertSame( UNKNOWN, service.checkPermission(doc, null, userPrincipal, permission, permissions, null)); // with lock doc.setLock(new Lock(user, new GregorianCalendar())); assertSame( DENY, service.checkPermission(doc, null, creatorPrincipal, permission, permissions, null)); assertSame( UNKNOWN, service.checkPermission(doc, null, userPrincipal, permission, permissions, null)); // test creator policy with lower order takes over lock deployContrib(CORE_TESTS_BUNDLE, "OSGI-INF/test-security-policy-contrib.xml"); assertSame( GRANT, service.checkPermission(doc, null, creatorPrincipal, permission, permissions, null)); assertSame( UNKNOWN, service.checkPermission(doc, null, userPrincipal, permission, permissions, null)); }