Improved tests
This commit is contained in:
@@ -69,35 +69,49 @@ shared_examples "relationable" do |relationable_model_name|
|
||||
expect(page).to have_content("Link not valid. Remember to start with #{Setting[:url]}.")
|
||||
end
|
||||
|
||||
scenario 'related content can be flagged', :js do
|
||||
scenario 'related content can be scored positively', :js do
|
||||
related_content = create(:related_content, parent_relationable: relationable, child_relationable: related1)
|
||||
|
||||
login_as(user)
|
||||
visit eval("#{relationable.class.name.downcase}_path(relationable)")
|
||||
|
||||
within("#related-content-list") do
|
||||
expect(page).to have_css("#flag-expand-related-#{related_content.opposite_related_content.id}")
|
||||
find("#flag-expand-related-#{related_content.opposite_related_content.id}").click
|
||||
expect(page).to have_css("#flag-drop-related-#{related_content.opposite_related_content.id}", visible: true)
|
||||
click_link("flag-related-#{related_content.opposite_related_content.id}")
|
||||
|
||||
expect(page).to have_css("#unflag-expand-related-#{related_content.opposite_related_content.id}")
|
||||
find("#score-positive-related-#{related_content.opposite_related_content.id}").click
|
||||
expect(page).to_not have_css("#score-positive-related-#{related_content.opposite_related_content.id}")
|
||||
end
|
||||
|
||||
expect(related_content.reload.flags_count).to eq(1)
|
||||
expect(related_content.opposite_related_content.flags_count).to eq(1)
|
||||
expect(related_content.reload.positive_score).to eq(1)
|
||||
expect(related_content.opposite_related_content.reload.positive_score).to eq(1)
|
||||
end
|
||||
|
||||
scenario 'if related content has been flagged more than 5 times it will be hidden', :js do
|
||||
scenario 'related content can be scored negatively', :js do
|
||||
related_content = create(:related_content, parent_relationable: relationable, child_relationable: related1)
|
||||
|
||||
related_content.flags_count = Setting['related_contents_report_threshold'].to_i + 1
|
||||
related_content.opposite_related_content.flags_count = related_content.flags_count
|
||||
login_as(user)
|
||||
visit eval("#{relationable.class.name.downcase}_path(relationable)")
|
||||
|
||||
within("#related-content-list") do
|
||||
find("#score-negative-related-#{related_content.opposite_related_content.id}").click
|
||||
expect(page).to_not have_css("#score-negative-related-#{related_content.opposite_related_content.id}")
|
||||
end
|
||||
|
||||
expect(related_content.reload.negative_score).to eq(1)
|
||||
expect(related_content.opposite_related_content.reload.negative_score).to eq(1)
|
||||
end
|
||||
|
||||
scenario 'if related content has negative score it will be hidden' do
|
||||
related_content = create(:related_content, parent_relationable: relationable, child_relationable: related1)
|
||||
|
||||
related_content.positive_score = 4
|
||||
related_content.negative_score = 20
|
||||
related_content.opposite_related_content.positive_score = 4
|
||||
related_content.opposite_related_content.negative_score = 20
|
||||
|
||||
related_content.save
|
||||
related_content.opposite_related_content.save
|
||||
|
||||
login_as(user)
|
||||
|
||||
visit eval("#{relationable.class.name.downcase}_path(relationable)")
|
||||
|
||||
expect(page).to_not have_css("#related-content-list")
|
||||
|
||||
Reference in New Issue
Block a user