Skip to content

Commit 0e63fe2

Browse files
committed
fix(test): replace Collection|iterable with Collection and add appropriate PHPDoc tags
Fixes several phpstan errors ignored in the config
1 parent d3b4b7b commit 0e63fe2

File tree

27 files changed

+230
-64
lines changed

27 files changed

+230
-64
lines changed

phpstan.neon.dist

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ parameters:
4747
message: '#but database expects#'
4848
paths:
4949
- tests/Fixtures/TestBundle/Entity/
50-
- '#Cannot call method add\(\) on iterable.#'
5150
-
5251
message: '#is never read, only written.#'
5352
paths:

src/Doctrine/Common/Tests/Fixtures/TestBundle/Entity/Dummy.php

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,11 @@ class Dummy
103103
#[ORM\ManyToOne(targetEntity: RelatedDummy::class)]
104104
public ?RelatedDummy $relatedDummy = null;
105105

106+
/**
107+
* @var Collection<int, RelatedDummy>
108+
*/
106109
#[ORM\ManyToMany(targetEntity: RelatedDummy::class)]
107-
public Collection|iterable $relatedDummies;
110+
public Collection$relatedDummies;
108111

109112
/**
110113
* @var array|null serialize data
@@ -302,7 +305,10 @@ public function getDummy()
302305
return $this->dummy;
303306
}
304307

305-
public function getRelatedDummies(): Collection|iterable
308+
/**
309+
* @return Collection<int, RelatedDummy>
310+
*/
311+
public function getRelatedDummies(): Collection
306312
{
307313
return $this->relatedDummies;
308314
}

src/Doctrine/Common/Tests/Fixtures/TestBundle/Entity/RelatedDummy.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,12 @@ class RelatedDummy extends ParentDummy implements \Stringable
8282
#[Groups(['barcelona', 'chicago', 'friends'])]
8383
public ?ThirdLevel $thirdLevel = null;
8484

85+
/**
86+
* @var Collection<int, RelatedToDummyFriend>
87+
*/
8588
#[ORM\OneToMany(targetEntity: RelatedToDummyFriend::class, cascade: ['persist'], mappedBy: 'relatedDummy')]
8689
#[Groups(['fakemanytomany', 'friends'])]
87-
public Collection|iterable $relatedToDummyFriend;
90+
public Collection $relatedToDummyFriend;
8891

8992
/**
9093
* @var bool|null A dummy bool
@@ -168,8 +171,10 @@ public function setThirdLevel(?ThirdLevel $thirdLevel = null): void
168171

169172
/**
170173
* Get relatedToDummyFriend.
174+
*
175+
* @return Collection<int, RelatedToDummyFriend>
171176
*/
172-
public function getRelatedToDummyFriend(): Collection|iterable
177+
public function getRelatedToDummyFriend(): Collection
173178
{
174179
return $this->relatedToDummyFriend;
175180
}

src/Doctrine/Odm/Tests/Fixtures/Document/Dummy.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,11 @@ class Dummy
7676
public $dummyPrice;
7777
#[ODM\ReferenceOne(targetDocument: RelatedDummy::class, storeAs: 'id', nullable: true)]
7878
public ?RelatedDummy $relatedDummy = null;
79+
/**
80+
* @return Collection<int, RelatedDummy>
81+
*/
7982
#[ODM\ReferenceMany(targetDocument: RelatedDummy::class, storeAs: 'id', nullable: true)]
80-
public Collection|iterable $relatedDummies;
83+
public Collection $relatedDummies;
8184
#[ODM\Field(type: 'hash', nullable: true)]
8285
public array $jsonData = [];
8386
#[ODM\Field(type: 'collection', nullable: true)]

src/Doctrine/Odm/Tests/Fixtures/Document/RelatedDummy.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,11 @@ class RelatedDummy extends ParentDummy implements \Stringable
4242
public $dummyDate;
4343
#[ODM\ReferenceOne(targetDocument: ThirdLevel::class, cascade: ['persist'], nullable: true, storeAs: 'id', inversedBy: 'relatedDummies')]
4444
public ?ThirdLevel $thirdLevel = null;
45+
/**
46+
* @var Collection<int, RelatedToDummyFriend>
47+
*/
4548
#[ODM\ReferenceMany(targetDocument: RelatedToDummyFriend::class, cascade: ['persist'], mappedBy: 'relatedDummy', storeAs: 'id')]
46-
public Collection|iterable $relatedToDummyFriend;
49+
public Collection $relatedToDummyFriend;
4750
#[ODM\Field(type: 'bool')]
4851
public ?bool $dummyBoolean = null;
4952
#[ODM\EmbedOne(targetDocument: EmbeddableDummy::class)]
@@ -120,8 +123,10 @@ public function setThirdLevel(?ThirdLevel $thirdLevel = null): void
120123

121124
/**
122125
* Get relatedToDummyFriend.
126+
*
127+
* @return Collection<int, RelatedToDummyFriend>
123128
*/
124-
public function getRelatedToDummyFriend(): Collection|iterable
129+
public function getRelatedToDummyFriend(): Collection
125130
{
126131
return $this->relatedToDummyFriend;
127132
}

src/Doctrine/Orm/Tests/Fixtures/Entity/Dummy.php

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,11 @@ class Dummy
106106
#[ORM\ManyToOne(targetEntity: RelatedDummy::class)]
107107
public ?RelatedDummy $relatedDummy = null;
108108

109+
/**
110+
* @var Collection<int, RelatedDummy>
111+
*/
109112
#[ORM\ManyToMany(targetEntity: RelatedDummy::class)]
110-
public Collection|iterable $relatedDummies;
113+
public Collection $relatedDummies;
111114

112115
/**
113116
* @var array|null serialize data
@@ -305,7 +308,10 @@ public function getDummy()
305308
return $this->dummy;
306309
}
307310

308-
public function getRelatedDummies(): Collection|iterable
311+
/**
312+
* @return Collection<int, RelatedDummy>
313+
*/
314+
public function getRelatedDummies(): Collection
309315
{
310316
return $this->relatedDummies;
311317
}

src/Doctrine/Orm/Tests/Fixtures/Entity/RelatedDummy.php

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,12 @@ class RelatedDummy extends ParentDummy implements \Stringable
9090
#[Groups(['barcelona', 'chicago', 'friends'])]
9191
public ?ThirdLevel $thirdLevel = null;
9292

93+
/**
94+
* @var Collection<int, RelatedToDummyFriend>
95+
*/
9396
#[ORM\OneToMany(targetEntity: RelatedToDummyFriend::class, cascade: ['persist'], mappedBy: 'relatedDummy')]
9497
#[Groups(['fakemanytomany', 'friends'])]
95-
public Collection|iterable $relatedToDummyFriend;
98+
public Collection $relatedToDummyFriend;
9699

97100
#[ORM\Column(enumType: DummyBackedEnum::class, nullable: true)]
98101
public DummyBackedEnum $dummyBackedEnum;
@@ -178,9 +181,11 @@ public function setThirdLevel(?ThirdLevel $thirdLevel = null): void
178181
}
179182

180183
/**
181-
* Get relatedToDummyFriend.
184+
* Get relatedToDummyFriend
185+
*
186+
* @return Collection<int, RelatedToDummyFriend>
182187
*/
183-
public function getRelatedToDummyFriend(): Collection|iterable
188+
public function getRelatedToDummyFriend(): Collection
184189
{
185190
return $this->relatedToDummyFriend;
186191
}

src/OpenApi/Tests/Fixtures/Dummy.php

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515

1616
use ApiPlatform\Metadata\ApiProperty;
1717
use ApiPlatform\Metadata\ApiResource;
18+
use Doctrine\Common\Collections\ArrayCollection;
19+
use Doctrine\Common\Collections\Collection;
1820

1921
/**
2022
* Dummy.
@@ -81,7 +83,7 @@ class Dummy
8183
#[ApiProperty(push: true)]
8284
public ?RelatedDummy $relatedDummy = null;
8385

84-
public iterable $relatedDummies;
86+
public Collection $relatedDummies;
8587

8688
/**
8789
* @var array|null serialize data
@@ -104,7 +106,7 @@ public static function staticMethod(): void
104106

105107
public function __construct()
106108
{
107-
$this->relatedDummies = [];
109+
$this->relatedDummies = new ArrayCollection();
108110
}
109111

110112
public function getId()
@@ -241,7 +243,7 @@ public function getDummy()
241243
return $this->dummy;
242244
}
243245

244-
public function getRelatedDummies(): iterable
246+
public function getRelatedDummies(): Collection
245247
{
246248
return $this->relatedDummies;
247249
}

src/Serializer/Tests/Fixtures/ApiResource/Dummy.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ class Dummy
8383
#[ApiProperty(push: true)]
8484
public ?RelatedDummy $relatedDummy = null;
8585

86-
public Collection|iterable $relatedDummies;
86+
public Collection $relatedDummies;
8787

8888
/**
8989
* @var Collection<int, RelatedDummy>
@@ -249,7 +249,7 @@ public function getDummy()
249249
return $this->dummy;
250250
}
251251

252-
public function getRelatedDummies(): Collection|iterable
252+
public function getRelatedDummies(): Collection
253253
{
254254
return $this->relatedDummies;
255255
}

tests/Fixtures/TestBundle/Document/Answer.php

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,13 @@ class Answer
4343
#[Serializer\Groups(['foobar'])]
4444
#[ODM\ReferenceOne(targetDocument: Question::class, mappedBy: 'answer')]
4545
private ?Question $question = null;
46+
47+
/**
48+
* @var Collection<int, Question>
49+
*/
4650
#[Serializer\Groups(['foobar'])]
4751
#[ODM\ReferenceMany(targetDocument: Question::class, mappedBy: 'answer')]
48-
private Collection|iterable $relatedQuestions;
52+
private Collection $relatedQuestions;
4953

5054
public function __construct()
5155
{
@@ -98,8 +102,10 @@ public function getQuestion(): ?Question
98102

99103
/**
100104
* Get related question.
105+
*
106+
* @return Collection<int, Question>
101107
*/
102-
public function getRelatedQuestions(): Collection|iterable
108+
public function getRelatedQuestions(): Collection
103109
{
104110
return $this->relatedQuestions;
105111
}

0 commit comments

Comments
 (0)