Requiring State in order to MatchΒΆ
A matcher can include a field requiresState, which dictates the state Hoverfly must be in for there to be a match:
"request": {
"path": [
{
"matcher": "exact",
"value": "/basket"
}
]
"requiresState": {
"eggs": "present",
"bacon" : "large"
}
},
"response": {
"status": 200,
"body": "eggs and large bacon"
}
In the above case, the following matches results would occur when making a request to /basket:
Current State of Hoverfly | matches? | reason |
---|---|---|
eggs=present,bacon=large | true | Required and current state are equal |
eggs=present,bacon=large,f=x | true | Additional state ‘f=x’ is not used by this matcher |
eggs=present | false | Bacon is missing |
eggs=present,bacon=small | false | Bacon is has the wrong value |