add comments on entries
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
require "test_helper"
|
||||
|
||||
class CommentsControllerTest < ActionDispatch::IntegrationTest
|
||||
setup do
|
||||
@user = users(:contributor_user)
|
||||
@entry = entries(:one)
|
||||
@supported_language = supported_languages(:one)
|
||||
end
|
||||
|
||||
test "should not create comment if not logged in" do
|
||||
assert_no_difference("Comment.count") do
|
||||
post entry_comments_url(@entry), params: { comment: { body: "Test comment", language_code: @supported_language.code } }
|
||||
end
|
||||
assert_redirected_to new_user_session_url
|
||||
end
|
||||
|
||||
test "should create comment if logged in" do
|
||||
login_as @user
|
||||
assert_difference("Comment.count", 1) do
|
||||
post entry_comments_url(@entry), params: { comment: { body: "Test comment", language_code: @supported_language.code } }
|
||||
end
|
||||
assert_redirected_to @entry
|
||||
assert_equal "Test comment", Comment.last.body
|
||||
assert_equal @supported_language.code, Comment.last.language_code
|
||||
assert_equal @user, Comment.last.user
|
||||
end
|
||||
|
||||
# Assuming you want to test turbo stream responses as well
|
||||
test "should create comment and respond with turbo stream" do
|
||||
login_as @user
|
||||
post entry_comments_url(@entry), params: { comment: { body: "Test turbo comment", language_code: @supported_language.code } }, as: :turbo_stream
|
||||
assert_response :success
|
||||
assert_match(/turbo-stream action=\"append\" target=\"comments-#{@supported_language.code}\"/, response.body)
|
||||
assert_match(/Test turbo comment/, response.body)
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def new_user_session_url
|
||||
login_path
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user