update toHaveProperties

This commit is contained in:
Lucas Giovanny
2023-04-02 11:15:31 +01:00
parent 99d3ee448c
commit 31726b51ad
4 changed files with 31 additions and 12 deletions

View File

@ -1016,4 +1016,4 @@
PASS Tests\Visual\Version
✓ visual snapshot of help command output
Tests: 2 deprecated, 3 warnings, 4 incomplete, 1 notice, 4 todos, 14 skipped, 709 passed (1711 assertions)
Tests: 2 deprecated, 3 warnings, 4 incomplete, 1 notice, 4 todos, 14 skipped, 709 passed (1717 assertions)

View File

@ -4,30 +4,49 @@ use PHPUnit\Framework\ExpectationFailedException;
test('pass', function () {
$object = new stdClass();
$object->name = 'Jhon';
$object->name = 'John';
$object->age = 21;
expect($object)->toHaveProperties(['name', 'age']);
expect($object)
->toHaveProperties(['name', 'age'])
->toHaveProperties([
'name' => 'John',
'age' => 21,
]);
});
test('failures', function () {
$object = new stdClass();
$object->name = 'Jhon';
$object->name = 'John';
expect($object)->toHaveProperties(['name', 'age']);
expect($object)
->toHaveProperties(['name', 'age'])
->toHaveProperties([
'name' => 'John',
'age' => 21,
]);
})->throws(ExpectationFailedException::class);
test('failures with custom message', function () {
$object = new stdClass();
$object->name = 'Jhon';
$object->name = 'John';
expect($object)->toHaveProperties(['name', 'age'], 'oh no!');
expect($object)
->toHaveProperties(['name', 'age'], 'oh no!')
->toHaveProperties([
'name' => 'John',
'age' => 21,
], 'oh no!');
})->throws(ExpectationFailedException::class, 'oh no!');
test('not failures', function () {
$object = new stdClass();
$object->name = 'Jhon';
$object->name = 'John';
$object->age = 21;
expect($object)->not->toHaveProperties(['name', 'age']);
expect($object)->not->toHaveProperties(['name', 'age'])
->not->toHaveProperties([
'name' => 'John',
'age' => 21,
]);
})->throws(ExpectationFailedException::class);

View File

@ -18,7 +18,7 @@ $run = function () {
test('parallel', function () use ($run) {
expect($run('--exclude-group=integration'))
->toContain('Tests: 2 deprecated, 3 warnings, 4 incomplete, 1 notice, 4 todos, 11 skipped, 697 passed (1696 assertions)')
->toContain('Tests: 2 deprecated, 3 warnings, 4 incomplete, 1 notice, 4 todos, 11 skipped, 697 passed (1702 assertions)')
->toContain('Parallel: 3 processes');
})->skipOnWindows();