Files
kapow/spec/test/features/control/insert/error_unprocessable.feature
Roberto Abdelkader Martínez Pérez 58a800e5e9 Replace request/response with new commands
2019-09-05 08:40:59 +02:00

55 lines
1.6 KiB
Gherkin

Feature: Kapow! server rejects insertion requests with semantic errors.
Kapow! server will refuse to insert routes when
it receives a valid JSON but not conforming document.
Scenario: Error because lacking mandatory fields.
If a request lacks any mandatory fields the server
responds with an error.
Given I have a running Kapow! server
When I insert the route:
"""
{
"entrypoint": "/bin/sh -c",
"command": "ls -la / | kapow set /response/body"
}
"""
Then I get 422 as response code
And I get "Invalid Route" as response reason phrase
Scenario: Error because wrong route specification.
If a request contains an invalid expression in the
url_pattern field the server responds with an error.
Given I have a running Kapow! server
When I insert the route:
"""
{
"method": "GET",
"url_pattern": "+123--",
"entrypoint": "/bin/sh -c",
"command": "ls -la / | kapow set /response/body",
"index": 0
}
"""
Then I get 422 as response code
And I get "Invalid Route" as response reason phrase
Scenario: Error because negative index specified.
If a request contains a negative number in the
index field the server responds with an error.
Given I have a running Kapow! server
When I insert the route:
"""
{
"method": "GET",
"url_pattern": "+123--",
"entrypoint": "/bin/sh -c",
"command": "ls -la / | kapow set /response/body",
"index": -1
}
"""
Then I get 422 as response code
And I get "Invalid Route" as response reason phrase