private void stringFunc(final Function func, final Literal expected, final Literal... args)
{
final Literal result = func.apply(_abox, null, args);
if (expected == null || result == null)
assertEquals("Unexpected function result.", expected, result);
else
assertTrue("Unexcepted resturn value. Expected " + expected + " but saw " + result, ComparisonTesters.equal.test(new Literal[] { expected, result }));
assertEquals("Wrong return value", expected, func.apply(_abox, expected, args));
assertEquals("Unexpected equality", null, func.apply(_abox, _abox.addLiteral(DependencySet.INDEPENDENT), args));
}