Sha256: 75704ded996fc3954bccd5a0d30f0ed4fa9f6c3717911dd8441a61f0dda3ba7d

Contents?: true

Size: 805 Bytes

Versions: 1

Compression:

Stored size: 805 Bytes

Contents

# frozen_string_literal: true

module RSpec
  module Grape
    module Entity
      module Matchers
        module IncludeDocumentationMatcher
          extend RSpec::Matchers::DSL

          matcher :include_documentation do |expected|
            include MatcherHelpers

            match { |actual| expect(documentation(actual)).to include expected }
            match_when_negated { |actual| expect(documentation(actual)).to_not include expected }
            description { "include documentation #{expected}" }
            failure_message { |actual| "expect #{documentation actual} would include the documentation #{expected}" }

            def documentation(actual)
              exposure_attribute(actual, :documentation) || {}
            end
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rspec-grape-entity-0.1.0 lib/rspec_grape_entity/matchers/include_documentation_matcher.rb