Ejemplo n.º 1
0
});
$tests->claim('$tests->clear should work', function () use($testTests) {
    $testTests->claim('fail', function () {
        return false;
    });
    $testTests->clear()->check();
    return $testTests->getRaw('nogroup') === array();
});
$tests->claim('$tests->reps should work', function ($reps) use($testTests) {
    $i = 0;
    $testTests->reps($reps);
    $testTests->test('reps', function () use(&$i) {
        $i++;
    });
    return $i === $reps;
}, array(PHPCheck::Integer(1, 10)));
$tests->claim('Failed claims should be failed', function () use($testTests) {
    $testTests->claim('fail', function () {
        return false;
    });
    $testTests->check();
    return $testTests->getRaw('nogroup') === array(array('fail', false));
});
$tests->claim('Missing claims should be missed', function () use($testTests) {
    $testTests->claim('missing', function () {
    });
    return $testTests->getRaw('nogroup') === array(array('missing', null));
});
$tests->claim('Groups should work', function () use($testTests) {
    $testTests->group('Test group');
    $testTests->claim('missing', function () {
Ejemplo n.º 2
0
    }
    return true;
}, array(PHPCheck::OneOf(array(function () use($OO_a) {
    $OO_a++;
    return 'a';
}, function () use($OO_b) {
    $OO_b++;
    return 'b';
}))));
$tests->claim('OneOf specifier (string)', function ($c, $d) {
    return strlen($c) === 1 && $c > 'b' && $c < 'h' && $d === 'a';
}, array(PHPCheck::OneOf('cdefg'), PHPCheck::OneOf('a')));
$tests->claim('SpecArray specifier', function ($ary) {
    if (!is_int($ary[0]) || !is_int($ary[1])) {
        return false;
    }
    return $ary[0] < $ary[1];
}, array(PHPCheck::SpecArray(array(PHPCheck::Integer(2), PHPCheck::Integer(3, 5)))));
$tests->claim('SpecArray specifier 2 (with keys)', function ($ary) {
    if (!is_int($ary['foo']) || !is_int($ary['bar'])) {
        return false;
    }
    return $ary['foo'] < $ary['bar'];
}, array(PHPCheck::SpecArray(array('foo' => PHPCheck::Integer(2), 'bar' => PHPCheck::Integer(3, 5)))));
$tests->claim('String specifier (simple value)', function ($a, $b, $c) {
    return $a === '23' && ($b === '5' || $b === '6') && $c === '["a","b"]';
}, array(PHPCheck::String(23), PHPCheck::String(PHPCheck::Integer(5, 6)), PHPCheck::String(array('a', 'b'))));
$tests->claim('String specifier (num values)', function ($a, $b) {
    return $a === 'aaa' && ($b === 'aa' || $b === 'aaa');
}, array(PHPCheck::String(3, PHPCheck::OneOf('a')), PHPCheck::String(PHPCheck::Integer(2, 3), 'a')));