Skip to content
This repository was archived by the owner on Jan 29, 2020. It is now read-only.

Commit 4d2e7aa

Browse files
fixed few return types
fixed dynamic properties in unit test fixed stuff according to coding standard changed few lambda function to static wherever possible
1 parent 35a0ff1 commit 4d2e7aa

File tree

4 files changed

+36
-16
lines changed

4 files changed

+36
-16
lines changed

src/HalResource.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ private function isResourceCollection($value, string $name, string $context) : b
378378
return false;
379379
}
380380

381-
if (! array_reduce($value, function ($isResource, $item) {
381+
if (! array_reduce($value, static function ($isResource, $item) {
382382
return $isResource && $item instanceof self;
383383
}, true)) {
384384
return false;
@@ -449,7 +449,7 @@ private function serializeLinks()
449449
private function serializeEmbeddedResources()
450450
{
451451
$embedded = [];
452-
array_walk($this->embedded, function ($resource, $name) use (&$embedded) {
452+
array_walk($this->embedded, static function ($resource, $name) use (&$embedded) {
453453
$embedded[$name] = $resource instanceof self
454454
? $resource->toArray()
455455
: array_map(static function ($item) {

src/ResourceGenerator/ExtractCollectionTrait.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,9 +88,11 @@ private function extractPaginator(
8888
return $this->createPaginatedCollectionResource(
8989
$pageCount,
9090
$data,
91-
function (int $page) use ($collection) {
91+
// @codingStandardsIgnoreStart
92+
static function (int $page) use ($collection) {
9293
$collection->setCurrentPageNumber($page);
9394
},
95+
// @codingStandardsIgnoreEnd
9496
$collection,
9597
$metadata,
9698
$resourceGenerator,

test/HalResponseFactoryFactoryTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public function testReturnsHalResponseFactoryInstance() : void
3333
$jsonRenderer = $this->prophesize(Renderer\JsonRenderer::class)->reveal();
3434
$xmlRenderer = $this->prophesize(Renderer\XmlRenderer::class)->reveal();
3535
$response = $this->prophesize(ResponseInterface::class)->reveal();
36-
$responseFactory = function () use ($response) {
36+
$responseFactory = static function () use ($response) {
3737
return $response;
3838
};
3939

@@ -55,7 +55,7 @@ public function testReturnsHalResponseFactoryInstance() : void
5555
public function testReturnsHalResponseFactoryInstanceWithoutConfiguredDependencies() : void
5656
{
5757
$response = $this->prophesize(ResponseInterface::class)->reveal();
58-
$responseFactory = function () use ($response) {
58+
$responseFactory = static function () use ($response) {
5959
return $response;
6060
};
6161
$container = $this->prophesize(ContainerInterface::class);
@@ -75,7 +75,7 @@ public function testReturnsHalResponseFactoryInstanceWhenResponseInterfaceReturn
7575
$jsonRenderer = $this->prophesize(Renderer\JsonRenderer::class)->reveal();
7676
$xmlRenderer = $this->prophesize(Renderer\XmlRenderer::class)->reveal();
7777
$response = $this->prophesize(ResponseInterface::class)->reveal();
78-
$responseFactory = function () use ($response) {
78+
$responseFactory = static function () use ($response) {
7979
return $response;
8080
};
8181
$stream = new class()

test/ResourceGenerator/DoctrinePaginatorTest.php

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@
99

1010
use ArrayIterator;
1111
use Doctrine\ORM\AbstractQuery;
12-
use Doctrine\ORM\QueryBuilder;
1312
use Doctrine\ORM\Tools\Pagination\Paginator;
1413
use PHPUnit\Framework\TestCase;
1514
use Prophecy\Argument;
15+
use Prophecy\Prophecy\ObjectProphecy;
1616
use Psr\Http\Message\ServerRequestInterface;
1717
use Zend\Expressive\Hal\HalResource;
1818
use Zend\Expressive\Hal\Link;
@@ -24,6 +24,24 @@
2424

2525
class DoctrinePaginatorTest extends TestCase
2626
{
27+
/** @var ObjectProphecy&RouteBasedCollectionMetadata */
28+
private $metadata;
29+
30+
/** @var ObjectProphecy&LinkGenerator */
31+
private $linkGenerator;
32+
33+
/** @var ObjectProphecy&ResourceGenerator */
34+
private $generator;
35+
36+
/** @var ObjectProphecy&ServerRequestInterface */
37+
private $request;
38+
39+
/** @var ObjectProphecy&Paginator */
40+
private $paginator;
41+
42+
/** @var RouteBasedCollectionStrategy */
43+
private $strategy;
44+
2745
public function setUp()
2846
{
2947
$this->metadata = $this->prophesize(RouteBasedCollectionMetadata::class);
@@ -35,15 +53,15 @@ public function setUp()
3553
$this->strategy = new RouteBasedCollectionStrategy();
3654
}
3755

38-
public function mockQuery()
56+
public function mockQuery(): \PHPUnit\Framework\MockObject\MockObject
3957
{
4058
return $this->getMockBuilder(AbstractQuery::class)
4159
->disableOriginalConstructor()
4260
->setMethods(['getMaxResults', 'setFirstResult'])
4361
->getMockForAbstractClass();
4462
}
4563

46-
public function mockLinkGeneration(string $relation, string $route, array $routeParams, array $queryStringArgs)
64+
public function mockLinkGeneration(string $relation, string $route, array $routeParams, array $queryStringArgs): void
4765
{
4866
$link = $this->prophesize(Link::class)->reveal();
4967
$this->linkGenerator
@@ -67,7 +85,7 @@ public function invalidPageCombinations() : iterable
6785
/**
6886
* @dataProvider invalidPageCombinations
6987
*/
70-
public function testThrowsOutOfBoundsExceptionForInvalidPage(int $page, int $numPages)
88+
public function testThrowsOutOfBoundsExceptionForInvalidPage(int $page, int $numPages): void
7189
{
7290
$query = $this->mockQuery();
7391
$query->expects($this->once())
@@ -90,7 +108,7 @@ public function testThrowsOutOfBoundsExceptionForInvalidPage(int $page, int $num
90108
);
91109
}
92110

93-
public function testDoesNotCreateLinksForUnknownPaginationParamType()
111+
public function testDoesNotCreateLinksForUnknownPaginationParamType(): void
94112
{
95113
$query = $this->mockQuery();
96114
$query->expects($this->once())
@@ -113,7 +131,7 @@ public function testDoesNotCreateLinksForUnknownPaginationParamType()
113131
->shouldBeCalledTimes(1);
114132
$this->request->getAttribute(Argument::any(), Argument::any())->shouldNotBeCalled();
115133

116-
$values = array_map(function ($value) {
134+
$values = array_map(static function ($value) {
117135
return (object) ['value' => $value];
118136
}, range(46, 60));
119137
$this->paginator->getIterator()->willReturn(new ArrayIterator($values));
@@ -147,7 +165,7 @@ public function testDoesNotCreateLinksForUnknownPaginationParamType()
147165
$this->assertInstanceOf(HalResource::class, $resource);
148166
}
149167

150-
public function testCreatesLinksForQueryBasedPagination()
168+
public function testCreatesLinksForQueryBasedPagination(): void
151169
{
152170
$query = $this->mockQuery();
153171
$query->expects($this->once())
@@ -173,7 +191,7 @@ public function testCreatesLinksForQueryBasedPagination()
173191
->shouldBeCalledTimes(1);
174192
$this->request->getAttribute(Argument::any(), Argument::any())->shouldNotBeCalled();
175193

176-
$values = array_map(function ($value) {
194+
$values = array_map(static function ($value) {
177195
return (object) ['value' => $value];
178196
}, range(46, 60));
179197
$this->paginator->getIterator()->willReturn(new ArrayIterator($values));
@@ -216,7 +234,7 @@ public function testCreatesLinksForQueryBasedPagination()
216234
$this->assertInstanceOf(HalResource::class, $resource);
217235
}
218236

219-
public function testCreatesLinksForRouteBasedPagination()
237+
public function testCreatesLinksForRouteBasedPagination(): void
220238
{
221239
$query = $this->mockQuery();
222240
$query->expects($this->once())
@@ -242,7 +260,7 @@ public function testCreatesLinksForRouteBasedPagination()
242260
->willReturn(3)
243261
->shouldBeCalledTimes(1);
244262

245-
$values = array_map(function ($value) {
263+
$values = array_map(static function ($value) {
246264
return (object) ['value' => $value];
247265
}, range(46, 60));
248266
$this->paginator->getIterator()->willReturn(new ArrayIterator($values));

0 commit comments

Comments
 (0)