22
33use Swis \JsonApi \Client \DocumentClient ;
44use Swis \JsonApi \Client \DocumentFactory ;
5- use Swis \JsonApi \Client \Tests \Mocks \Items \ ChildItem ;
5+ use Swis \JsonApi \Client \Tests \Mocks \ItemStub ;
66use Swis \JsonApi \Client \Tests \Mocks \MockRepository ;
77
88use function PHPStan \Testing \assertType ;
99
1010$ repository = new MockRepository (DocumentClient::create (), new DocumentFactory );
1111
12- assertType ('Swis\JsonApi\Client\Interfaces\CollectionDocumentInterface<Swis\JsonApi\Client\Tests\Mocks\Items\ChildItem> ' , $ repository ->all ());
13- assertType ('Swis\JsonApi\Client\Interfaces\ItemDocumentInterface<Swis\JsonApi\Client\Tests\Mocks\Items\ChildItem> ' , $ repository ->find ('foo ' ));
14- assertType ('Swis\JsonApi\Client\Interfaces\ItemDocumentInterface<Swis\JsonApi\Client\Tests\Mocks\Items\ChildItem> ' , $ repository ->save (new ChildItem ));
12+ $ all = $ repository ->all ();
13+ assertType ('Swis\JsonApi\Client\Interfaces\CollectionDocumentInterface<Swis\JsonApi\Client\Tests\Mocks\ItemStub> ' , $ all );
14+ assertType ('Swis\JsonApi\Client\Collection<int, Swis\JsonApi\Client\Tests\Mocks\ItemStub> ' , $ all ->getData ());
15+ assertType ('Swis\JsonApi\Client\Tests\Mocks\ItemStub|null ' , $ all ->getData ()->first ());
16+
17+ $ find = $ repository ->find ('foo ' );
18+ assertType ('Swis\JsonApi\Client\Interfaces\ItemDocumentInterface<Swis\JsonApi\Client\Tests\Mocks\ItemStub> ' , $ find );
19+ assertType ('Swis\JsonApi\Client\Tests\Mocks\ItemStub ' , $ find ->getData ());
20+
21+ $ take = $ repository ->take ();
22+ assertType ('Swis\JsonApi\Client\Interfaces\ItemDocumentInterface<Swis\JsonApi\Client\Tests\Mocks\ItemStub> ' , $ take );
23+ assertType ('Swis\JsonApi\Client\Tests\Mocks\ItemStub ' , $ take ->getData ());
24+
25+ $ save = $ repository ->save (new ItemStub );
26+ assertType ('Swis\JsonApi\Client\Interfaces\ItemDocumentInterface<Swis\JsonApi\Client\Tests\Mocks\ItemStub> ' , $ save );
27+ assertType ('Swis\JsonApi\Client\Tests\Mocks\ItemStub ' , $ save ->getData ());
0 commit comments