class JSONAPI::Resources::Matchers::Filter

Attributes

expected_filter_name[RW]
resource[RW]

Public Class Methods

new(name) click to toggle source
# File lib/jsonapi/resources/matchers/filter.rb, line 8
def initialize(name)
  self.expected_filter_name = name
end

Public Instance Methods

description() click to toggle source
# File lib/jsonapi/resources/matchers/filter.rb, line 18
def description
  "be able to filter by `#{expected_filter_name}`"
end
failure_message() click to toggle source
# File lib/jsonapi/resources/matchers/filter.rb, line 22
def failure_message
  resource_name = resource.class.name.demodulize
  %Q(expected #{resource_name} to be able to filter #{expected_filter_name})
end
matches?(resource) click to toggle source
# 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