use of org.apache.jena.rdf.model.RDFList in project jena by apache.
the class SecuredRDFListTest method testSetHead.
@Test
public void testSetHead() {
try {
RDFNode result = getSecuredRDFList().setHead(newResource1);
if (!shouldRead() || !securityEvaluator.evaluate(Action.Update)) {
fail("Should have thrown AccessDeniedException");
}
assertEquals(resource1, result);
List<RDFNode> lst = ((RDFList) getBaseRDFNode()).asJavaList();
Iterator<RDFNode> iter = lst.iterator();
assertEquals(newResource1, iter.next());
assertEquals(resource2, iter.next());
assertEquals(resource3, iter.next());
assertEquals(resource4, iter.next());
assertFalse(iter.hasNext());
} catch (final AccessDeniedException e) {
if (shouldRead() && securityEvaluator.evaluate(Action.Update) && securityEvaluator.evaluate(Action.Delete)) {
fail("Should not have thrown AccessDeniedException");
}
} catch (final EmptyListException e) {
if (securityEvaluator.evaluate(Action.Read)) {
fail("Should not have thrown EmptyListException");
}
}
}
use of org.apache.jena.rdf.model.RDFList in project jena by apache.
the class RDFListIterator method next.
@Override
public RDFList next() {
if (hasNext()) {
found = null;
final RDFList retval = current;
incrementCurrent();
return retval;
}
throw new NoSuchElementException();
}
use of org.apache.jena.rdf.model.RDFList in project jena by apache.
the class SecuredRDFListTest method testAppendRDFList.
@Test
public void testAppendRDFList() {
final Set<Action> perms = SecurityEvaluator.Util.asSet(new Action[] { Action.Update, Action.Create });
Model m = ModelFactory.createDefaultModel();
RDFList lst = m.createList(newResource1, newResource2, newResource3, newResource4);
try {
SecuredRDFList actual = (SecuredRDFList) getSecuredRDFList().append(lst);
if (!securityEvaluator.evaluate(perms) || !shouldRead()) {
fail("Should have thrown AccessDeniedException");
}
Iterator<RDFNode> iter = ((RDFList) actual.getBaseItem()).iterator();
if (securityEvaluator.evaluate(Action.Read)) {
assertEquals(resource1, iter.next());
assertEquals(resource2, iter.next());
assertEquals(resource3, iter.next());
assertEquals(resource4, iter.next());
}
assertEquals(newResource1, iter.next());
assertEquals(newResource2, iter.next());
assertEquals(newResource3, iter.next());
assertEquals(newResource4, iter.next());
assertFalse(iter.hasNext());
} catch (final AccessDeniedException e) {
if (securityEvaluator.evaluate(perms) && shouldRead()) {
fail("Should not have thrown AccessDeniedException");
}
}
}
use of org.apache.jena.rdf.model.RDFList in project jena by apache.
the class SecuredRDFListTest method testRemoveHead.
@Test
public void testRemoveHead() {
try {
RDFList rdfList = getSecuredRDFList().removeHead();
if (!shouldRead() || !securityEvaluator.evaluate(Action.Update) || !securityEvaluator.evaluate(Action.Delete)) {
fail("Should have thrown AccessDeniedException");
}
Iterator<RDFNode> iter = rdfList.asJavaList().iterator();
assertEquals(resource2, iter.next());
assertEquals(resource3, iter.next());
assertEquals(resource4, iter.next());
assertFalse(iter.hasNext());
} catch (final AccessDeniedException e) {
if (shouldRead() && securityEvaluator.evaluate(Action.Update) && securityEvaluator.evaluate(Action.Delete)) {
fail("Should not have thrown AccessDeniedException");
}
} catch (final EmptyListException e) {
if (securityEvaluator.evaluate(Action.Read)) {
fail("Should not have thrown EmptyListException");
}
}
}
use of org.apache.jena.rdf.model.RDFList in project jena by apache.
the class SecuredRDFListTest method testReplace.
@Test
public void testReplace() {
try {
RDFNode result = getSecuredRDFList().replace(1, newResource1);
if (!shouldRead() || !securityEvaluator.evaluate(Action.Update)) {
fail("Should have thrown AccessDeniedException");
}
assertEquals(resource2, result);
List<RDFNode> lst = ((RDFList) getBaseRDFNode()).asJavaList();
Iterator<RDFNode> iter = lst.iterator();
assertEquals(resource1, iter.next());
assertEquals(newResource1, iter.next());
assertEquals(resource3, iter.next());
assertEquals(resource4, iter.next());
assertFalse(iter.hasNext());
} catch (final AccessDeniedException e) {
if (shouldRead() && securityEvaluator.evaluate(Action.Update) && securityEvaluator.evaluate(Action.Delete)) {
fail("Should not have thrown AccessDeniedException");
}
} catch (final ListIndexException e) {
if (securityEvaluator.evaluate(Action.Read)) {
fail("Should not have thrown ListIndexException");
}
}
}
Aggregations