class Pundit::Matchers::PermitAllActionsMatcher

This matcher tests whether a policy permits all actions.

Public Instance Methods

description() click to toggle source

A description of the matcher.

@return [String] A description of the matcher.

# File lib/pundit/matchers/permit_all_actions_matcher.rb, line 12
def description
  'permit all actions'
end
does_not_match?(_policy) click to toggle source

Raises a NotImplementedError @raise NotImplementedError @return [void]

# File lib/pundit/matchers/permit_all_actions_matcher.rb, line 29
def does_not_match?(_policy)
  raise NotImplementedError, format(AMBIGUOUS_NEGATED_MATCHER_ERROR, name: 'permit_all_actions')
end
failure_message() click to toggle source

Returns a failure message when the policy does not permit all actions.

@return [String] A failure message when the policy does not permit all actions.

# File lib/pundit/matchers/permit_all_actions_matcher.rb, line 36
def failure_message
  message = +"expected '#{policy_info}' to permit all actions,"
  message << " but forbade #{policy_info.forbidden_actions}"
  message << user_message
end
matches?(policy) click to toggle source

Checks if the given policy permits all actions.

@param policy [Object] The policy to test. @return [Boolean] True if the policy permits all actions, false otherwise.

# File lib/pundit/matchers/permit_all_actions_matcher.rb, line 20
def matches?(policy)
  setup_policy_info! policy

  policy_info.forbidden_actions.empty?
end