Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
370 changes: 19 additions & 351 deletions features/doctrine/date_filter.feature
Original file line number Diff line number Diff line change
Expand Up @@ -424,360 +424,28 @@ Feature: Date filter on collections
Then the response status code should be 200
And the response should be in JSON
And the header "Content-Type" should be equal to "application/ld+json; charset=utf-8"
And the JSON should be equal to:
And the JSON should be valid according to this schema:
"""
{
"@context": "/contexts/Dummy",
"@id": "/dummies",
"@type": "hydra:Collection",
"hydra:member": [],
"hydra:totalItems": 0,
"hydra:view": {
"@id": "/dummies?relatedDummy.dummyDate%5Bafter%5D=2015-04-28",
"@type": "hydra:PartialCollectionView"
},
"hydra:search": {
"@type": "hydra:IriTemplate",
"hydra:template": "/dummies{?dummyBoolean,relatedDummy.embeddedDummy.dummyBoolean,dummyDate[before],dummyDate[strictly_before],dummyDate[after],dummyDate[strictly_after],relatedDummy.dummyDate[before],relatedDummy.dummyDate[strictly_before],relatedDummy.dummyDate[after],relatedDummy.dummyDate[strictly_after],exists[alias],exists[description],exists[relatedDummy.name],exists[dummyBoolean],exists[relatedDummy],dummyFloat,dummyFloat[],dummyPrice,dummyPrice[],order[id],order[name],order[description],order[relatedDummy.name],order[relatedDummy.symfony],order[dummyDate],dummyFloat[between],dummyFloat[gt],dummyFloat[gte],dummyFloat[lt],dummyFloat[lte],dummyPrice[between],dummyPrice[gt],dummyPrice[gte],dummyPrice[lt],dummyPrice[lte],id,id[],name,alias,description,relatedDummy.name,relatedDummy.name[],relatedDummies,relatedDummies[],dummy,relatedDummies.name,relatedDummy.thirdLevel.level,relatedDummy.thirdLevel.level[],relatedDummy.thirdLevel.fourthLevel.level,relatedDummy.thirdLevel.fourthLevel.level[],relatedDummy.thirdLevel.badFourthLevel.level,relatedDummy.thirdLevel.badFourthLevel.level[],relatedDummy.thirdLevel.fourthLevel.badThirdLevel.level,relatedDummy.thirdLevel.fourthLevel.badThirdLevel.level[],name_converted,properties[]}",
"hydra:variableRepresentation": "BasicRepresentation",
"hydra:mapping": [
{
"@type": "IriTemplateMapping",
"variable": "dummyBoolean",
"property": "dummyBoolean",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.embeddedDummy.dummyBoolean",
"property": "relatedDummy.embeddedDummy.dummyBoolean",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyDate[before]",
"property": "dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyDate[strictly_before]",
"property": "dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyDate[after]",
"property": "dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyDate[strictly_after]",
"property": "dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.dummyDate[before]",
"property": "relatedDummy.dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.dummyDate[strictly_before]",
"property": "relatedDummy.dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.dummyDate[after]",
"property": "relatedDummy.dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.dummyDate[strictly_after]",
"property": "relatedDummy.dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "exists[alias]",
"property": "alias",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "exists[description]",
"property": "description",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "exists[relatedDummy.name]",
"property": "relatedDummy.name",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "exists[dummyBoolean]",
"property": "dummyBoolean",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "exists[relatedDummy]",
"property": "relatedDummy",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyFloat",
"property": "dummyFloat",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyFloat[]",
"property": "dummyFloat",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyPrice",
"property": "dummyPrice",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyPrice[]",
"property": "dummyPrice",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "order[id]",
"property": "id",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "order[name]",
"property": "name",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "order[description]",
"property": "description",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "order[relatedDummy.name]",
"property": "relatedDummy.name",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "order[relatedDummy.symfony]",
"property": "relatedDummy.symfony",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "order[dummyDate]",
"property": "dummyDate",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyFloat[between]",
"property": "dummyFloat",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyFloat[gt]",
"property": "dummyFloat",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyFloat[gte]",
"property": "dummyFloat",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyFloat[lt]",
"property": "dummyFloat",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyFloat[lte]",
"property": "dummyFloat",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyPrice[between]",
"property": "dummyPrice",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyPrice[gt]",
"property": "dummyPrice",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyPrice[gte]",
"property": "dummyPrice",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyPrice[lt]",
"property": "dummyPrice",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummyPrice[lte]",
"property": "dummyPrice",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "id",
"property": "id",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "id[]",
"property": "id",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "name",
"property": "name",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "alias",
"property": "alias",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "description",
"property": "description",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.name",
"property": "relatedDummy.name",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.name[]",
"property": "relatedDummy.name",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummies",
"property": "relatedDummies",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummies[]",
"property": "relatedDummies",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "dummy",
"property": "dummy",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummies.name",
"property": "relatedDummies.name",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.thirdLevel.level",
"property": "relatedDummy.thirdLevel.level",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.thirdLevel.level[]",
"property": "relatedDummy.thirdLevel.level",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.thirdLevel.fourthLevel.level",
"property": "relatedDummy.thirdLevel.fourthLevel.level",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.thirdLevel.fourthLevel.level[]",
"property": "relatedDummy.thirdLevel.fourthLevel.level",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.thirdLevel.badFourthLevel.level",
"property": "relatedDummy.thirdLevel.badFourthLevel.level",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.thirdLevel.badFourthLevel.level[]",
"property": "relatedDummy.thirdLevel.badFourthLevel.level",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.thirdLevel.fourthLevel.badThirdLevel.level",
"property": "relatedDummy.thirdLevel.fourthLevel.badThirdLevel.level",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "relatedDummy.thirdLevel.fourthLevel.badThirdLevel.level[]",
"property": "relatedDummy.thirdLevel.fourthLevel.badThirdLevel.level",
"required": false
},
{
"@type": "IriTemplateMapping",
"variable": "name_converted",
"property": "name_converted",
"required": false
"type": "object",
"properties": {
"@context": {"pattern": "^/contexts/Dummy$"},
"@id": {"pattern": "^/dummies$"},
"@type": {"pattern": "^hydra:Collection$"},
"hydra:member": {
"type": "array",
"maxItems": 0
},
"hydra:totalItems": {"type":"number", "maximum": 0},
"hydra:view": {
"type": "object",
"properties": {
"@id": {"pattern": "^/dummies\\?relatedDummy\\.dummyDate%5Bafter%5D=2015-04-28$"},
"@type": {"pattern": "^hydra:PartialCollectionView$"}
},
{
"@type": "IriTemplateMapping",
"variable": "properties[]",
"property": null,
"required": false
}
]
"required": ["@id", "@type"],
"additionalProperties": false
}
}
}
"""
Expand Down
Loading