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