Commit 2e071a18 authored by Steffen van Bergerem's avatar Steffen van Bergerem

Merge pull request #5741 from goobertron/add_likes_tests

Add tests for liking and unliking posts
parents 2328f64d 2b6ca180
......@@ -101,6 +101,7 @@ diaspora.yml file**. The existing settings from 0.4.x and before will not work a
* Partial Backbone port of the notification dropdown [#5707](https://github.com/diaspora/diaspora/pull/5707)
* Add rounded corners for avatars [#5733](https://github.com/diaspora/diaspora/pull/5733)
* Move registration form to a partial [#5764](https://github.com/diaspora/diaspora/pull/5764)
* Add tests for liking and unliking posts [#5741](https://github.com/diaspora/diaspora/pull/5741)
## Bug fixes
* orca cannot see 'Add Contact' button [#5158](https://github.com/diaspora/diaspora/pull/5158)
......
@javascript
Feature: Liking posts
In order to show my appreciation
As a friendly person
I want to like their posts
Background:
Given following users exist:
| username | email |
| Bob Jones | [email protected] |
| Alice Smith | [email protected] |
And a user with email "[email protected]" is connected with "[email protected]"
And "[email protected]" has a public post with text "I like unicorns"
And I sign in as "[email protected]"
Scenario: Liking and unliking a post from the stream
When I am on the home page
Then I should see "Bob"
And I should see "I like unicorns"
When I like the post "I like unicorns" in the stream
Then I should see a ".likes" within "#main_stream .stream_element"
When I unlike the post "I like unicorns" in the stream
Then I should not see a ".likes" within "#main_stream .stream_element"
Scenario: Liking and unliking a post from a single post page
When I open the show page of the "I like unicorns" post
And I click to like the post
Then I should see a ".count" within "#single-post-interactions"
When I click to unlike the post
Then I should not see a ".count" within "#single-post-interactions"
Scenario: Someone likes my post
When I am on the home page
And I like the post "I like unicorns" in the stream
And I sign out
And I sign in as "[email protected]"
And I am on the home page
Then I should see a ".likes" within "#main_stream .stream_element"
......@@ -12,4 +12,9 @@ end
And /^I click to delete the post/ do
find('.remove_post').click
end
\ No newline at end of file
end
And /^I click to (?:like|unlike) the post/ do
like_show_page_post
end
Then /^I like the post "([^"]*)"$/ do |post_text|
like_post(post_text)
When /^I (?:like|unlike) the post "([^"]*)" in the stream$/ do |post_text|
like_stream_post(post_text)
end
Then /^"([^"]*)" should be post (\d+)$/ do |post_text, position|
......
......@@ -88,15 +88,21 @@ module PublishingCukeHelpers
find(".stream_element", text: text)
end
def like_post(post_text)
def within_post(post_text)
within find_post_by_text(post_text) do
yield
end
end
def like_stream_post(post_text)
within_post(post_text) do
click_link 'Like'
find(:css, 'a.like').click
end
end
def within_post(post_text)
within find_post_by_text(post_text) do
yield
def like_show_page_post
within("#single-post-actions") do
find(:css, 'a.like').click
end
end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment