assert_all_ok() public static method

Iterate over all the items in $a and pass each to $callback. If the callback returns true for all, it passes -- otherwise it fails
public static assert_all_ok ( array | Traversable $a, callable $callback, string $msg = null )
$a array | Traversable an array or Traversable (iterable) object
$callback callable [description]
$msg string optional description of assertion
Example #1
0
    fu::strict_equal(true, fu::assert_not_ok("")['result'], "empty string is falsy");
    fu::strict_equal(true, fu::assert_not_ok(array())['result'], "empty array is falsy");
    fu::strict_equal(true, fu::assert_not_ok(null)['result'], "null is falsy");
    fu::strict_equal(true, fu::assert_not_ok(false)['result'], "false is falsy");
    fu::strict_equal(false, fu::assert_not_ok(true)['result'], "true is truthy");
    fu::strict_equal(false, fu::assert_not_ok('false')['result'], "'false' is truthy");
    fu::strict_equal(false, fu::assert_not_ok(new stdClass())['result'], "stdClass is truthy");
});
fu::test('FUnit::assert_all_ok tests', function () {
    $all_ints = array(1, 2, 3, 4, 5);
    $not_all_ints = array(1, 2, "3", 4, 5);
    fu::strict_equal(true, fu::assert_all_ok($all_ints, function ($val) {
        return is_int($val);
    })['result'], "\$all_ints are all integers");
    fu::strict_equal(false, fu::assert_all_ok($not_all_ints, function ($val) {
        return is_int($val);
    })['result'], "\$not_all_ints are NOT all integers");
});
fu::test('FUnit::assert_equal tests', function () {
    fu::strict_equal(true, fu::assert_equal(1, 1)['result'], "1 and 1 are 'equal'");
    fu::strict_equal(true, fu::assert_equal("a", "a")['result'], "'a' and 'a' are 'equal'");
    fu::strict_equal(true, fu::assert_equal(new stdClass(), new stdClass())['result'], "new stdClass and new stdClass are 'equal'");
    fu::strict_equal(true, fu::assert_equal(1, "1")['result'], "1 and '1' are 'equal'");
    fu::strict_equal(true, fu::assert_equal(1, true)['result'], "1 and true are 'equal'");
    fu::strict_equal(true, fu::assert_equal(null, 0)['result'], "null and 0 are 'equal'");
    fu::strict_equal(true, fu::assert_equal(false, null)['result'], "false and null are 'equal'");
    fu::strict_equal(true, fu::assert_equal(array(), null)['result'], "array() and null are 'equal'");
    fu::strict_equal(false, fu::assert_equal(array(), 1)['result'], "array() and 1 are not 'equal'");
    fu::strict_equal(false, fu::assert_equal(1, 0)['result'], "1 and 1 are not 'equal'");
    fu::strict_equal(false, fu::assert_equal("a", "b")['result'], "'a' and 'b' are not 'equal'");
    fu::strict_equal(false, fu::assert_equal(new stdClass(), new ArrayObject())['result'], "new stdClass and new ArrayObject are not 'equal'");