Sha256: 77496984d78240a8d9a69216fc5c087dfd3f8059533ee1d39c0b650ef02e98ad

Contents?: true

Size: 849 Bytes

Versions: 1

Compression:

Stored size: 849 Bytes

Contents

require 'tester/modules/module'
require 'tester/util/supported_verbs'

class ExtraVerbs < Module
  def go(endpoint, report)
    super

    extras = SupportedVerbs.all - endpoint.verbs
    extras.each do |verb|
      verb_case = BoundaryCase.new("Verb check with #{verb} for #{endpoint.name}", {}, {})
      method = ApiMethod.new verb, Response.new, 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 = test.check
      self.report.reports.concat reports
    end
    self.report.reports == []
  end
end

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

Version data entries

1 entries across 1 versions & 1 rubygems

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