Makes json expectation usable in Higher Order Tests

This commit is contained in:
Luke Downing
2022-01-23 23:10:14 +00:00
parent d2ca6e630d
commit ead2dfd0a9
3 changed files with 27 additions and 2 deletions

View File

@ -74,8 +74,20 @@ it('works with higher order tests')
->name()->toEqual('Has Methods')
->books()->each->toBeArray;
it('works consistently with the json expectation method', function () {
expect(new HasMethods())
->jsonString()->json()->id->toBe(1)
->jsonString()->json()->name->toBe('Has Methods')->toBeString()
->jsonString()->json()->quantity->toBe(20)->toBeInt();
});
class HasMethods
{
public function jsonString(): string
{
return '{ "id": 1, "name": "Has Methods", "quantity": 20 }';
}
public function name()
{
return 'Has Methods';