From b17387a17669bfc9afce7435653cd8c29c686999 Mon Sep 17 00:00:00 2001 From: Azul Date: Sat, 12 Jul 2014 09:12:48 +0200 Subject: some cleanup of the messages api and cuke feature --- features/messages.feature | 74 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 features/messages.feature (limited to 'features/messages.feature') diff --git a/features/messages.feature b/features/messages.feature new file mode 100644 index 0000000..34c0892 --- /dev/null +++ b/features/messages.feature @@ -0,0 +1,74 @@ +Feature: Receive messages for the user + + In order to stay in touch with the provider + As an authenticated user + I want to receive messages from the provider + + Background: + Given I authenticated + Given I set headers: + | Accept | application/json | + | Content-Type | application/json | + | Authorization | Token token="MY_AUTH_TOKEN" | + + Scenario: There are no messages yet + When I send a GET request to "/1/messages.json" + Then the response status should be "200" + And the response should be: + """ + [] + """ + + Scenario: Fetch the unread messages + Given there is a message for me with: + | id | 1a2b3c4d | + | text | Your provider says hi ! | + When I send a GET request to "/1/messages.json" + Then the response status should be "200" + And the response should be: + """ + [{ + "id": "1a2b3c4d", + "text": "Your provider says hi !" + }] + """ + + Scenario: Send unread messages until marked as read + Given there is a message for me + And I have sent a GET request to "/1/messages.json" + When I send a GET request to "/1/messages.json" + Then the response status should be "200" + And the response should include that message + + Scenario: Mark message as read + Given there is a message for me with: + | id | 1a2b3c4d | + When I send a PUT request to "/1/messages/1a2b3c4d.json" + Then the response status should be "200" + And the response should be: + """ + { "success": "marked as read", + "message": "The message has been marked as read" } + """ + And that message should be marked as read + + Scenario: Message not found + When I send a PUT request to "/1/messages/1a2b3c4d.json" + Then the response status should be "404" + And the response should be: + """ + { "error": "not found", + "message": "The message could not be found" } + """ + + Scenario: Do not send read messages + Given there is a message for me + And that message is marked as read + When I send a GET request to "/1/messages.json" + Then the response status should be "200" + And the response should be: + """ + [] + """ + + -- cgit v1.2.3 From 20352249fa5dafe3abb2d4b751b1e5c8c0a59abc Mon Sep 17 00:00:00 2001 From: Azul Date: Thu, 17 Jul 2014 19:50:01 +0200 Subject: fix messages feature to match latest response format --- features/messages.feature | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) (limited to 'features/messages.feature') diff --git a/features/messages.feature b/features/messages.feature index 34c0892..69c5637 100644 --- a/features/messages.feature +++ b/features/messages.feature @@ -44,22 +44,16 @@ Feature: Receive messages for the user Given there is a message for me with: | id | 1a2b3c4d | When I send a PUT request to "/1/messages/1a2b3c4d.json" - Then the response status should be "200" - And the response should be: - """ - { "success": "marked as read", - "message": "The message has been marked as read" } - """ - And that message should be marked as read + Then that message should be marked as read + And the response status should be "200" + And the response should have "success" with "marked_as_read" + And the response should have "message" Scenario: Message not found When I send a PUT request to "/1/messages/1a2b3c4d.json" Then the response status should be "404" - And the response should be: - """ - { "error": "not found", - "message": "The message could not be found" } - """ + And the response should have "error" with "not_found" + And the response should have "message" Scenario: Do not send read messages Given there is a message for me @@ -70,5 +64,3 @@ Feature: Receive messages for the user """ [] """ - - -- cgit v1.2.3