Feature: Verify application's output I want to test that my application sends the correct requests to an external service As a tester trying to test the application So that I can verify my application independently of external services Background: Given I setup my capture service Scenario: Retrieve posts When I make 3 posts Then the service has received 3 posts Scenario Outline: HTTP methods When I do a <method> on "<endpoint>" Then the service has recieved a request on "<endpoint>" Examples: | method | endpoint | | POST | /poster | | PUT | /putter | @not_1.9.2 Scenario Outline: HTTP methods When I do a <method> on "<endpoint>" Then the service has recieved a request on "<endpoint>" Examples: | method | endpoint | | PATCH | /patcher | Scenario: Verifying headers When I do a POST on "/poster" #This is not an exhaustive list When the headers for the request on "/poster" should contain: | PATH_INFO | /poster | | QUERY_STRING | | | REQUEST_METHOD | POST | | SERVER_NAME | 127.0.0.1 | | SERVER_PORT | 9292 | | SERVER_PROTOCOL | HTTP/1.1 | | HTTP_VERSION | HTTP/1.1 | | REQUEST_PATH | /poster |