Project

General

Profile

Feature #42630 » 0003-Use-visible-for-method-names-for-consistency.patch

Katsuya HIDAKA, 2025-05-15 03:30

View differences:

app/helpers/reactions_helper.rb
22 22
  DISPLAY_REACTION_USERS_LIMIT = 10
23 23

  
24 24
  def reaction_button(object)
25
    return unless Redmine::Reaction.viewable?(object, User.current)
25
    return unless Redmine::Reaction.visible?(object, User.current)
26 26

  
27 27
    detail = object.reaction_detail
28 28

  
lib/redmine/reaction.rb
23 23
    REACTABLE_TYPES = %w(Journal Issue Message News Comment)
24 24

  
25 25
    # Returns true if the user can view the reaction of the object
26
    def self.viewable?(object, user = User.current)
26
    def self.visible?(object, user = User.current)
27 27
      Setting.reactions_enabled? && object.visible?(user)
28 28
    end
29 29

  
30 30
    # Returns true if the user can add/remove a reaction to/from the object
31 31
    def self.editable?(object, user = User.current)
32
      user.logged? && viewable?(object, user) && object&.project&.active?
32
      user.logged? && visible?(object, user) && object&.project&.active?
33 33
    end
34 34

  
35 35
    module Reactable
test/unit/lib/redmine/reaction_test.rb
124 124
    ), comment1.reaction_detail
125 125
  end
126 126

  
127
  test 'viewable? returns true when reactions are enabled and object is visible to user' do
127
  test 'visible? returns true when reactions are enabled and object is visible to user' do
128 128
    object = issues(:issues_007)
129 129
    user = users(:users_002)
130 130

  
131
    assert Redmine::Reaction.viewable?(object, user)
131
    assert Redmine::Reaction.visible?(object, user)
132 132
  end
133 133

  
134
  test 'viewable? returns false when reactions are disabled' do
134
  test 'visible? returns false when reactions are disabled' do
135 135
    Setting.reactions_enabled = '0'
136 136

  
137 137
    object = issues(:issues_007)
138 138
    user = users(:users_002)
139 139

  
140
    assert_not Redmine::Reaction.viewable?(object, user)
140
    assert_not Redmine::Reaction.visible?(object, user)
141 141
  end
142 142

  
143
  test 'viewable? returns false when object is not visible to user' do
143
  test 'visible? returns false when object is not visible to user' do
144 144
    object = issues(:issues_007)
145 145
    user = users(:users_002)
146 146

  
147 147
    object.expects(:visible?).with(user).returns(false)
148 148

  
149
    assert_not Redmine::Reaction.viewable?(object, user)
149
    assert_not Redmine::Reaction.visible?(object, user)
150 150
  end
151 151

  
152 152
  test 'editable? returns true for various reactable objects when user is logged in, object is visible, and project is active' do
(21-21/26)