1 # frozen_string_literal: true
 
   5 class ChangesetCommentTest < ActiveSupport::TestCase
 
   7   def test_does_not_accept_invalid_author
 
   8     comment = create(:changeset_comment)
 
  11     assert_not_predicate comment, :valid?
 
  13     comment.author_id = 999111
 
  14     assert_not_predicate comment, :valid?
 
  17   def test_does_not_accept_invalid_changeset
 
  18     comment = create(:changeset_comment)
 
  20     comment.changeset = nil
 
  21     assert_not_predicate comment, :valid?
 
  23     comment.changeset_id = 999111
 
  24     assert_not_predicate comment, :valid?
 
  27   def test_does_not_accept_empty_visible
 
  28     comment = create(:changeset_comment)
 
  31     assert_not_predicate comment, :valid?
 
  34   def test_comments_of_changeset_count
 
  35     changeset = create(:changeset)
 
  36     create_list(:changeset_comment, 3, :changeset_id => changeset.id)
 
  37     assert_equal 3, Changeset.find(changeset.id).comments.count
 
  41     ok = %W[Name vergrößern foo\nbar
 
  43     bad = ["foo\x00bar", "foo\x08bar", "foo\x1fbar", "foo\x7fbar",
 
  44            "foo\ufffebar", "foo\uffffbar"]
 
  47       changeset_comment = create(:changeset_comment)
 
  48       changeset_comment.body = body
 
  49       assert_predicate changeset_comment, :valid?, "#{body} is invalid, when it should be"
 
  53       changeset_comment = create(:changeset_comment)
 
  54       changeset_comment.body = body
 
  55       assert_not_predicate changeset_comment, :valid?, "#{body} is valid when it shouldn't be"