We have covered almost all of the edge cases. Now, we must implement the happy path scenario, where our endpoint is called as intended, and where we are actually creating the user and storing it in our database.
Let's carry on with the same process and start by defining a scenario:
Scenario: Minimal Valid User When the client creates a POST request to /users And attaches a valid Create User payload And sends the request Then our API should respond with a 201 HTTP status code And the payload of the response should be a string And the payload object should be added to the database, grouped under the "user" type
All steps are defined except the second, fifth, and last step. The second step can be implemented by using our getValidPayload
method to get a valid payload, like so:
When(/^attaches a valid (.+) payload$/, function (payloadType) { this.requestPayload = getValidPayload(payloadType); this.request .send(JSON.stringify(this.requestPayload)...