require "pact_broker/api/resources/base_resource" require "pact_broker/configuration" require "pact_broker/domain/verification" require "pact_broker/api/contracts/verification_contract" require "pact_broker/api/decorators/verification_summary_decorator" module PactBroker module Api module Resources class LatestVerificationsForConsumerVersion < BaseResource def allowed_methods ["GET", "OPTIONS"] end def content_types_provided [["application/hal+json", :to_json]] end def resource_exists? !!version end def to_json summary = verification_service.verification_summary_for_consumer_version(identifier_from_path) decorator_for(summary).to_json(decorator_options(identifier_from_path)) end def policy_name :'verifications::verifications' end private def version version_service.find_by_pacticipant_name_and_number( pacticipant_name: consumer_name, pacticipant_version_number: consumer_version_number ) end def decorator_for summary decorator_class(:verification_summary_decorator).new(summary) end end end end end