Sha256: f7b5107ae3bdd5ff03df0804138b55c4e6e2b7803ee87e26ff5652a40c153e46
Contents?: true
Size: 1.15 KB
Versions: 33
Compression:
Stored size: 1.15 KB
Contents
require 'pact_broker/api/contracts/base_contract' require 'uri' module PactBroker module Api module Contracts class VerificationContract < BaseContract property :success property :provider_version, as: :providerApplicationVersion property :build_url, as: :buildUrl validation do configure do config.messages_file = File.expand_path("../../../locale/en.yml", __FILE__) def not_blank? value value && value.to_s.strip.size > 0 end def valid_url? url URI(url) rescue URI::InvalidURIError, ArgumentError nil end def valid_version_number?(value) return true if PactBroker.configuration.order_versions_by_date parsed_version_number = PactBroker.configuration.version_parser.call(value) !!parsed_version_number end end required(:success).filled(:bool?) required(:provider_version) { not_blank? & valid_version_number? } optional(:build_url).maybe(:valid_url?) end end end end end
Version data entries
33 entries across 33 versions & 1 rubygems