class PactBroker::Api::Resources::ProviderPactsForVerification
Public Instance Methods
allowed_methods()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 14 def allowed_methods ["GET", "POST", "OPTIONS"] end
content_types_accepted()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 18 def content_types_accepted [["application/json"]] end
malformed_request?()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 22 def malformed_request? if (errors = query_schema.call(query)).any? set_json_validation_error_messages(errors) true else false end end
process_post()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 31 def process_post response.body = to_json true end
read_methods()
click to toggle source
Calls superclass method
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 36 def read_methods super + %w{POST} end
Private Instance Methods
log_request()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 92 def log_request logger.info "Fetching pacts for verification by #{provider_name}", provider_name: provider_name, params: query end
nested_query()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 96 def nested_query @nested_query ||= Rack::Utils.parse_nested_query(request.uri.query) end
pacts()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 42 def pacts @pacts ||= pact_service.find_for_verification( provider_name, parsed_query_params.provider_version_branch, parsed_query_params.provider_version_tags, parsed_query_params.consumer_version_selectors, { include_wip_pacts_since: parsed_query_params.include_wip_pacts_since, include_pending_status: parsed_query_params.include_pending_status } ) end
parsed_query_params()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 78 def parsed_query_params @parsed_query_params ||= decorator_class(:pacts_for_verification_query_decorator).new(OpenStruct.new).from_hash(query) end
query()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 82 def query @query ||= begin if request.get? nested_query elsif request.post? params(symbolize_names: false, default: {}) end end end
query_schema()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 70 def query_schema if request.get? PactBroker::Api::Contracts::PactsForVerificationQueryStringSchema else PactBroker::Api::Contracts::PactsForVerificationJSONQuerySchema end end
resource_title()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 55 def resource_title "Pacts to be verified by provider #{provider_name}" end
to_json()
click to toggle source
# File lib/pact_broker/api/resources/provider_pacts_for_verification.rb, line 59 def to_json log_request decorator_class(:verifiable_pacts_decorator).new(pacts).to_json( decorator_options( include_pending_status: parsed_query_params.include_pending_status, title: "Pacts to be verified by provider #{provider_name}", deprecated: request.get? ) ) end