spec/features/official_positions_spec.rb
require 'rails_helper'
feature 'Official positions' do
context "Badge" do
background do
@user1 = create(:user, official_level: 1, official_position: "Employee", official_position_badge: true)
@user2 = create(:user, official_level: 0, official_position: "")
end
scenario "Comments" do
proposal = create(:proposal)
comment1 = create(:comment, commentable: proposal, user: @user1)
comment2 = create(:comment, commentable: proposal, user: @user2)
visit proposal_path(proposal)
expect_badge_for("comment", comment1)
expect_no_badge_for("comment", comment2)
end
context "Debates" do
background do
@debate1 = create(:debate, author: @user1)
@debate2 = create(:debate, author: @user2)
end
scenario "Index" do
visit debates_path
expect_badge_for("debate", @debate1)
expect_no_badge_for("debate", @debate2)
end
scenario "Show" do
visit debate_path(@debate1)
expect_badge_for("debate", @debate1)
visit debate_path(@debate2)
expect_no_badge_for("debate", @debate2)
end
end
context "Proposals" do
background do
@proposal1 = create(:proposal, author: @user1)
@proposal2 = create(:proposal, author: @user2)
create_featured_proposals
end
scenario "Index" do
visit proposals_path
expect_badge_for("proposal", @proposal1)
expect_no_badge_for("proposal", @proposal2)
end
scenario "Show" do
visit proposal_path(@proposal1)
expect_badge_for("proposal", @proposal1)
visit proposal_path(@proposal2)
expect_no_badge_for("proposal", @proposal2)
end
end
context "Spending proposals" do
background do
Setting["feature.spending_proposals"] = true
@spending_proposal1 = create(:spending_proposal, author: @user1)
@spending_proposal2 = create(:spending_proposal, author: @user2)
end
after do
Setting["feature.spending_proposals"] = nil
end
scenario "Index" do
visit spending_proposals_path
expect_badge_for("spending_proposal", @spending_proposal1)
expect_no_badge_for("spending_proposal", @spending_proposal2)
end
scenario "Show" do
visit spending_proposal_path(@spending_proposal1)
expect_badge_for("spending_proposal", @spending_proposal1)
visit spending_proposal_path(@spending_proposal2)
expect_no_badge_for("spending_proposal", @spending_proposal2)
end
end
end
end