Skip to content

Commit 613bb5b

Browse files
authored
fix(doctrine): filters schema for dates and numbers (#7131)
1 parent b1eeb98 commit 613bb5b

File tree

8 files changed

+11
-11
lines changed

8 files changed

+11
-11
lines changed

src/Doctrine/Odm/Filter/DateFilter.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ private function addMatch(Builder $aggregationBuilder, string $field, string $op
248248
*/
249249
public function getSchema(Parameter $parameter): array
250250
{
251-
return ['type' => 'date'];
251+
return ['type' => 'string', 'format' => 'date'];
252252
}
253253

254254
public function getOpenApiParameters(Parameter $parameter): OpenApiParameter|array|null

src/Doctrine/Odm/Filter/NumericFilter.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,6 @@ protected function getType(?string $doctrineType = null): string
168168

169169
public function getSchema(Parameter $parameter): array
170170
{
171-
return ['type' => 'numeric'];
171+
return ['type' => 'number'];
172172
}
173173
}

src/Doctrine/Orm/Filter/DateFilter.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ protected function addWhere(QueryBuilder $queryBuilder, QueryNameGeneratorInterf
280280
*/
281281
public function getSchema(Parameter $parameter): array
282282
{
283-
return ['type' => 'date'];
283+
return ['type' => 'string', 'format' => 'date'];
284284
}
285285

286286
public function getOpenApiParameters(Parameter $parameter): OpenApiParameter|array|null

src/Doctrine/Orm/Filter/NumericFilter.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,6 @@ protected function getType(?string $doctrineType = null): string
181181

182182
public function getSchema(Parameter $parameter): array
183183
{
184-
return ['type' => 'numeric'];
184+
return ['type' => 'number'];
185185
}
186186
}

src/State/ApiResource/Error.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ public function __construct(
104104
identifier: true,
105105
writable: false,
106106
initializable: false,
107-
schema: ['type' => 'number', 'example' => 404, 'default' => 400]
107+
schema: ['type' => 'number', 'examples' => [404], 'default' => 400]
108108
)] private int $status,
109109
?array $originalTrace = null,
110110
private ?string $instance = null,

tests/Fixtures/TestBundle/ApiResource/WithParameter.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
#[Get(
3333
uriTemplate: 'with_parameters/{id}{._format}',
3434
uriVariables: [
35-
'id' => new Link(schema: ['type' => 'uuid'], property: 'id'),
35+
'id' => new Link(schema: ['type' => 'string', 'format' => 'uuid'], property: 'id'),
3636
],
3737
parameters: [
3838
'groups' => new QueryParameter(filter: new GroupFilter(parameterName: 'groups', overrideDefaultGroups: false)),

tests/Fixtures/TestBundle/Document/FilteredDateParameter.php

+3-3
Original file line numberDiff line numberDiff line change
@@ -32,18 +32,18 @@
3232
'date' => new QueryParameter(
3333
filter: new DateFilter(),
3434
property: 'createdAt',
35-
openApi: new Parameter('createdAt', 'query', allowEmptyValue: true)
35+
openApi: new Parameter('date', 'query', allowEmptyValue: true)
3636
),
3737
'date_include_null_always' => new QueryParameter(
3838
filter: new DateFilter(),
3939
property: 'createdAt',
4040
filterContext: DateFilterInterface::INCLUDE_NULL_BEFORE_AND_AFTER,
41-
openApi: new Parameter('createdAt', 'query', allowEmptyValue: true)
41+
openApi: new Parameter('date_include_null_always', 'query', allowEmptyValue: true)
4242
),
4343
'date_old_way' => new QueryParameter(
4444
filter: new DateFilter(properties: ['createdAt' => DateFilterInterface::INCLUDE_NULL_BEFORE_AND_AFTER]),
4545
property: 'createdAt',
46-
openApi: new Parameter('createdAt', 'query', allowEmptyValue: true)
46+
openApi: new Parameter('date_old_way', 'query', allowEmptyValue: true)
4747
),
4848
],
4949
)]

tests/Fixtures/TestBundle/Document/FilteredRangeParameter.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,12 @@
2626
parameters: [
2727
'quantity' => new QueryParameter(
2828
filter: new RangeFilter(),
29-
openApi: new Parameter('createdAt', 'query', allowEmptyValue: true)
29+
openApi: new Parameter('quantity', 'query', allowEmptyValue: true)
3030
),
3131
'amount' => new QueryParameter(
3232
filter: new RangeFilter(),
3333
property: 'quantity',
34-
openApi: new Parameter('createdAt', 'query', allowEmptyValue: true)
34+
openApi: new Parameter('amount', 'query', allowEmptyValue: true)
3535
),
3636
],
3737
)]

0 commit comments

Comments
 (0)