adds specs for user's page
This commit is contained in:
68
spec/features/users_spec.rb
Normal file
68
spec/features/users_spec.rb
Normal file
@@ -0,0 +1,68 @@
|
||||
require 'rails_helper'
|
||||
|
||||
feature 'Users' do
|
||||
|
||||
feature 'Show (public page)' do
|
||||
|
||||
background do
|
||||
@user = create(:user)
|
||||
1.times {create(:debate, author: @user)}
|
||||
2.times {create(:proposal, author: @user)}
|
||||
3.times {create(:comment, user: @user)}
|
||||
|
||||
visit user_path(@user)
|
||||
end
|
||||
|
||||
scenario 'shows user public activity' do
|
||||
expect(page).to have_content('1 Debate')
|
||||
expect(page).to have_content('2 Proposals')
|
||||
expect(page).to have_content('3 Comments')
|
||||
end
|
||||
|
||||
scenario 'default filter is proposals' do
|
||||
@user.proposals.each do |proposal|
|
||||
expect(page).to have_content(proposal.title)
|
||||
end
|
||||
|
||||
@user.debates.each do |debate|
|
||||
expect(page).to_not have_content(debate.title)
|
||||
end
|
||||
|
||||
@user.comments.each do |comment|
|
||||
expect(page).to_not have_content(comment.body)
|
||||
end
|
||||
end
|
||||
|
||||
scenario 'filters' do
|
||||
click_link '1 Debate'
|
||||
|
||||
@user.debates.each do |debate|
|
||||
expect(page).to have_content(debate.title)
|
||||
end
|
||||
|
||||
@user.proposals.each do |proposal|
|
||||
expect(page).to_not have_content(proposal.title)
|
||||
end
|
||||
|
||||
@user.comments.each do |comment|
|
||||
expect(page).to_not have_content(comment.body)
|
||||
end
|
||||
|
||||
click_link '3 Comments'
|
||||
|
||||
@user.comments.each do |comment|
|
||||
expect(page).to have_content(comment.body)
|
||||
end
|
||||
|
||||
@user.proposals.each do |proposal|
|
||||
expect(page).to_not have_content(proposal.title)
|
||||
end
|
||||
|
||||
@user.debates.each do |debate|
|
||||
expect(page).to_not have_content(debate.title)
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
@@ -57,7 +57,7 @@ describe "Abilities::Common" do
|
||||
|
||||
describe "other users" do
|
||||
let(:other_user) { create(:user) }
|
||||
it { should_not be_able_to(:show, other_user) }
|
||||
it { should be_able_to(:show, other_user) }
|
||||
it { should_not be_able_to(:edit, other_user) }
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user