Class: JSONAPI::Resources::Matchers::Filter
- Inherits:
-
Object
- Object
- JSONAPI::Resources::Matchers::Filter
- Defined in:
- lib/jsonapi/resources/matchers/filter.rb
Instance Attribute Summary collapse
-
#expected_filter_name ⇒ Object
Returns the value of attribute expected_filter_name.
-
#resource ⇒ Object
Returns the value of attribute resource.
Instance Method Summary collapse
- #description ⇒ Object
- #failure_message ⇒ Object
-
#initialize(name) ⇒ Filter
constructor
A new instance of Filter.
- #matches?(resource) ⇒ Boolean
Constructor Details
#initialize(name) ⇒ Filter
Returns a new instance of Filter.
8 9 10 |
# File 'lib/jsonapi/resources/matchers/filter.rb', line 8 def initialize(name) self.expected_filter_name = name end |
Instance Attribute Details
#expected_filter_name ⇒ Object
Returns the value of attribute expected_filter_name.
6 7 8 |
# File 'lib/jsonapi/resources/matchers/filter.rb', line 6 def expected_filter_name @expected_filter_name end |
#resource ⇒ Object
Returns the value of attribute resource.
6 7 8 |
# File 'lib/jsonapi/resources/matchers/filter.rb', line 6 def resource @resource end |
Instance Method Details
#description ⇒ Object
18 19 20 |
# File 'lib/jsonapi/resources/matchers/filter.rb', line 18 def description "be able to filter by `#{expected_filter_name}`" end |
#failure_message ⇒ Object
22 23 24 25 |
# File 'lib/jsonapi/resources/matchers/filter.rb', line 22 def resource_name = resource.class.name.demodulize %Q(expected #{resource_name} to be able to filter #{expected_filter_name}) end |
#matches?(resource) ⇒ Boolean
12 13 14 15 16 |
# File 'lib/jsonapi/resources/matchers/filter.rb', line 12 def matches?(resource) self.resource = resource self.resource.class._allowed_filters.keys. include?(self.expected_filter_name) end |