Module: Pundit::ExpectedAttributeValues::TestHelpers
- Defined in:
- lib/pundit/expected_attribute_values/test_helpers.rb
Class Method Summary collapse
- .expected_values_for(policy, attribute, action:) ⇒ Object
- .expects_value?(policy, attribute, value, action:) ⇒ Boolean
- .matches_expected_values?(policy, attribute, expected, action:) ⇒ Boolean
- .refutes_expected_value?(policy, attribute, value, action:) ⇒ Boolean
Class Method Details
.expected_values_for(policy, attribute, action:) ⇒ Object
8 9 10 11 12 |
# File 'lib/pundit/expected_attribute_values/test_helpers.rb', line 8 def expected_values_for(policy, attribute, action:) raise ArgumentError, "action is required" if action.nil? policy.pundit_expected_attribute_values_for_attribute(attribute, action: action) end |
.expects_value?(policy, attribute, value, action:) ⇒ Boolean
14 15 16 17 18 |
# File 'lib/pundit/expected_attribute_values/test_helpers.rb', line 14 def expects_value?(policy, attribute, value, action:) expected_values_for(policy, attribute, action: action).include?( ValueResolver.normalize_value(value) ) end |
.matches_expected_values?(policy, attribute, expected, action:) ⇒ Boolean
24 25 26 27 28 |
# File 'lib/pundit/expected_attribute_values/test_helpers.rb', line 24 def matches_expected_values?(policy, attribute, expected, action:) actual = expected_values_for(policy, attribute, action: action) expected_list = ValueResolver.normalize_list(expected) actual.sort == expected_list.sort end |
.refutes_expected_value?(policy, attribute, value, action:) ⇒ Boolean
20 21 22 |
# File 'lib/pundit/expected_attribute_values/test_helpers.rb', line 20 def refutes_expected_value?(policy, attribute, value, action:) !expects_value?(policy, attribute, value, action: action) end |