This rule was added in 3.1.0. Applying it allows you to start defining a way of doing this in the project, helping to maintain consistency.
61 lines
1.9 KiB
Ruby
61 lines
1.9 KiB
Ruby
require "rails_helper"
|
|
|
|
# Specs in this file have access to a helper object that includes
|
|
# the CommentsHelper. For example:
|
|
#
|
|
# describe CommentsHelper do
|
|
# describe "string concat" do
|
|
# it "concats two strings with spaces" do
|
|
# expect(helper.concat_strings("this","that")).to eq("this that")
|
|
# end
|
|
# end
|
|
# end
|
|
RSpec.describe CommentsHelper do
|
|
describe "#user_level_class" do
|
|
def comment_double(as_administrator: false, as_moderator: false, official: false)
|
|
user = instance_double(User, official?: official, official_level: "Y")
|
|
instance_double(Comment, as_administrator?: as_administrator, as_moderator?: as_moderator, user: user)
|
|
end
|
|
|
|
it "returns is-admin for comment done as administrator" do
|
|
comment = comment_double(as_administrator: true)
|
|
|
|
expect(helper.user_level_class(comment)).to eq("is-admin")
|
|
end
|
|
|
|
it "returns is-moderator for comment done as moderator" do
|
|
comment = comment_double(as_moderator: true)
|
|
|
|
expect(helper.user_level_class(comment)).to eq("is-moderator")
|
|
end
|
|
|
|
it "returns level followed by official level if user is official" do
|
|
comment = comment_double(official: true)
|
|
|
|
expect(helper.user_level_class(comment)).to eq("level-Y")
|
|
end
|
|
|
|
it "returns an empty class otherwise" do
|
|
comment = comment_double
|
|
|
|
expect(helper.user_level_class(comment)).to eq("")
|
|
end
|
|
end
|
|
|
|
describe "#comment_author_class" do
|
|
it "returns is-author if author is the commenting user" do
|
|
author_id = 42
|
|
comment = instance_double(Comment, user_id: author_id)
|
|
|
|
expect(helper.comment_author_class(comment, author_id)).to eq("is-author")
|
|
end
|
|
|
|
it "returns an empty string if commenter is not the author" do
|
|
author_id = 42
|
|
comment = instance_double(Comment, user_id: author_id - 1)
|
|
|
|
expect(helper.comment_author_class(comment, author_id)).to eq("")
|
|
end
|
|
end
|
|
end
|