Sha256: 32404e570fce580f1d2cf2def6c8e00ad03b5f2f82dea4cd86944bb40dc1d158
Contents?: true
Size: 1.15 KB
Versions: 36
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
36 entries across 36 versions & 1 rubygems