Sha256: d23826a37b3dd8af9b9ad2f20ca1a9ddef47ef83dff14c99ddb0c31de19e7c02
Contents?: true
Size: 1.44 KB
Versions: 5
Compression:
Stored size: 1.44 KB
Contents
require 'reform' require 'reform/contract' require 'versionomy' require 'pact_broker/messages' require 'pact_broker/constants' require 'pact_broker/api/contracts/pacticipant_name_contract' require 'pact_broker/api/contracts/consumer_version_number_validation' module PactBroker module Api module Contracts class PutPacticipantNameContract < PacticipantNameContract validates :name, presence: true, blank: false validate :name_in_path_matches_name_in_pact def name_in_path_matches_name_in_pact if present?(name) && present?(name_in_pact) if name != name_in_pact errors.add(:name, validation_message('pacticipant_name_mismatch', message_args)) end end end def present? string string && !blank?(string) end end class PutPactParamsContract < Reform::Contract include PactBroker::Messages property :consumer_version_number property :consumer, form: PutPacticipantNameContract property :provider, form: PutPacticipantNameContract validates :consumer_version_number, presence: true validate :consumer_version_number_valid include ConsumerVersionNumberValidation def consumer_version_number_validation_message validation_message('consumer_version_number_invalid', consumer_version_number: consumer_version_number) end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems