/** * @dataProvider subjectProvider * @coversNothing */ public function test_forAll_callback(testSubject $subject) { $ran = 0; $subject->forAll(function () use($subject, &$ran) { self::assertEquals(3, func_num_args()); list($v, $k, $t) = func_get_args(); self::assertSame($subject($k), $v); self::assertTrue(is_integer($k) || is_string($k)); self::assertSame($subject, $t); $ran += 1; return true; }); self::assertEquals(count($subject), $ran); }