### Question:
BinaryFunctionBinaryPredicate implements BinaryPredicate<L, R> { public boolean test(final L left, final R right) { return function.evaluate(left, right).booleanValue(); } BinaryFunctionBinaryPredicate(final BinaryFunction<? super L, ? super R, Boolean> function); boolean test(final L left, final R right); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString(); static BinaryFunctionBinaryPredicate<L, R> adapt(
            final BinaryFunction<? super L, ? super R, Boolean> function);  }### Answer:
@Test public void testTestWhenTrue() throws Exception { BinaryPredicate<Object, Object> p = new BinaryFunctionBinaryPredicate<Object, Object>(Constant.TRUE); assertTrue(p.test(null,null)); }
@Test public void testTestWhenFalse() throws Exception { BinaryPredicate<Object, Object> p = new BinaryFunctionBinaryPredicate<Object, Object>(Constant.FALSE); assertFalse(p.test(null,null)); }