Sha256: 08e3518fcfb92fa7c7bd4bfa2faf7b2b11ec4b8747fed5e0888840234516c59a

Contents?: true

Size: 952 Bytes

Versions: 1

Compression:

Stored size: 952 Bytes

Contents

 require 'api-tester/util/supported_verbs'

module ApiTester
  module ExtraVerbs
    def self.go(endpoint, report)
      reports = []
      extras = ApiTester::SupportedVerbs.all - endpoint.verbs
      extras.each do |verb|
        verb_case = BoundaryCase.new("Verb check with #{verb} for #{endpoint.name}", {}, {})
        method = ApiTester::ApiMethod.new verb, ApiTester::Response.new, ApiTester::Request.new
        response = endpoint.call method, verb_case.payload, verb_case.headers
        test = VerbClass.new response, verb_case.payload, endpoint.not_allowed_response, endpoint.url, verb
        reports.concat test.check
      end
      report.reports.concat reports
      reports == []
    end

    def self.order
      3
    end
  end

  class VerbClass < MethodCaseTest
      def initialize response, payload, expected_response, url, verb
          super response, payload, expected_response, url, verb, "VerbModule"
      end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
api-tester-0.3.0 lib/api-tester/modules/extra_verbs.rb