@Test
public void testTestOrDefault2() {

    final Fun.ThrowingBiPredicate<String, Integer> predicate = (key, newValue) -> {
        if (newValue % 3 == 0) {
            throw new Exception("multiples of three are disallowed");
        }
        return newValue % 2 == 0;
    };
    assertFalse("1 should be false for not even and not a multiple of 3",
            testOrDefault2(predicate, true).test("", 1));
    assertTrue("2 should be true for even and not a multiple of 3",
            testOrDefault2(predicate, true).test("", 2));
    assertTrue("3 should be true for multiple of 3",
            testOrDefault2(predicate, true).test("", 3));
}