Move relationable expectations to controller tests
Having expectations related to database operations in system tests after the process running the browser has started might result in exceptions while running our test suite.
This commit is contained in:
@@ -10,4 +10,48 @@ describe RelatedContentsController do
|
||||
end.to raise_error ActiveRecord::RecordNotFound
|
||||
end
|
||||
end
|
||||
|
||||
describe "#score_positive" do
|
||||
it "increases the score of both the related content and its opposite" do
|
||||
user = create(:user, :level_two)
|
||||
related_content = create(:related_content, author: create(:user))
|
||||
opposite_content = related_content.opposite_related_content
|
||||
|
||||
sign_in user
|
||||
|
||||
put :score_positive, params: { id: related_content, format: :js }
|
||||
|
||||
score = related_content.related_content_scores
|
||||
.find_by(user: user, related_content: related_content)
|
||||
.value
|
||||
opposite_score = opposite_content.related_content_scores
|
||||
.find_by(user: user, related_content: opposite_content)
|
||||
.value
|
||||
|
||||
expect(score).to eq(1)
|
||||
expect(opposite_score).to eq(1)
|
||||
end
|
||||
end
|
||||
|
||||
describe "#score_negative" do
|
||||
it "decreases the score of both the related content and its opposite" do
|
||||
user = create(:user, :level_two)
|
||||
related_content = create(:related_content, author: create(:user))
|
||||
opposite_content = related_content.opposite_related_content
|
||||
|
||||
sign_in user
|
||||
|
||||
put :score_negative, params: { id: related_content, format: :js }
|
||||
|
||||
score = related_content.related_content_scores
|
||||
.find_by(user: user, related_content: related_content)
|
||||
.value
|
||||
opposite_score = opposite_content.related_content_scores
|
||||
.find_by(user: user, related_content: opposite_content)
|
||||
.value
|
||||
|
||||
expect(score).to eq(-1)
|
||||
expect(opposite_score).to eq(-1)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user