Sha256: c3cf8311d502276c97571a95e1c1e2eb052782a1a96af11d6902912f435098e4
Contents?: true
Size: 769 Bytes
Versions: 15
Compression:
Stored size: 769 Bytes
Contents
require 'pact/consumer_contract/pact_file' require 'pact/hal/http_client' require 'pact/hal/entity' module Pact module Provider class PactSource attr_reader :uri # PactURI class def initialize uri @uri = uri end def pact_json @pact_json ||= Pact::PactFile.read(uri.uri, uri.options) end def pact_hash @pact_hash ||= JSON.load(pact_json, nil, { max_nesting: 50 }) end def hal_entity http_client_keys = [:username, :password, :token] http_client_options = uri.options.reject{ |k, _| !http_client_keys.include?(k) } http_client = Pact::Hal::HttpClient.new(http_client_options) Pact::Hal::Entity.new(uri, pact_hash, http_client) end end end end
Version data entries
15 entries across 15 versions & 1 rubygems