Sha256: d12e5074dafc1308eea88611c9d8c6c5c8cb4a319f63c7797f58c1941035b465
Contents?: true
Size: 1.36 KB
Versions: 1
Compression:
Stored size: 1.36 KB
Contents
require 'pact_broker/api/resources/base_resource' require 'pact_broker/verifications/verification_status' require 'pact_broker/configuration' module PactBroker module Api module Resources class Badge < BaseResource def allowed_methods ['GET'] end def content_types_provided [['image/svg+xml', :to_svg]] end def resource_exists? true end def is_authorized?(authorization_header) super || PactBroker.configuration.enable_public_badge_access end def forbidden? false end private def to_svg badge_service.pact_verification_badge pact, label, initials, verification_status end def pact @pact ||= pact_service.find_latest_pact(identifier_from_path) end def latest_verification return nil unless pact @verification ||= verification_service.find_latest_verification_for(pact.consumer, pact.provider, identifier_from_path[:tag]) end def verification_status @verification_status ||= PactBroker::Verifications::Status.new(pact, latest_verification).to_sym end def label request.query['label'] end def initials request.query['initials'] == 'true' end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
pact_broker-2.5.0 | lib/pact_broker/api/resources/badge.rb |