Sha256: 51592431129ff25e1b2497efd4822a5e3b20ebe5a28b04016fb7d4b3a55e1643

Contents?: true

Size: 807 Bytes

Versions: 5

Compression:

Stored size: 807 Bytes

Contents

module PactBroker
  module Api
    module Contracts
      module ConsumerVersionNumberValidation

        include PactBroker::Messages

        def consumer_version_number_present
          unless consumer_version_number
            errors.add(:base, validation_message('consumer_version_number_missing'))
          end
        end

        def consumer_version_number_valid
          if consumer_version_number && invalid_consumer_version_number?
            errors.add(:base, consumer_version_number_validation_message)
          end
        end

        def invalid_consumer_version_number?
          begin
            Versionomy.parse(consumer_version_number)
            false
          rescue Versionomy::Errors::ParseError => e
            true
          end
        end

      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
pact_broker-1.6.0 lib/pact_broker/api/contracts/consumer_version_number_validation.rb
pact_broker-1.5.0 lib/pact_broker/api/contracts/consumer_version_number_validation.rb
pact_broker-1.4.0 lib/pact_broker/api/contracts/consumer_version_number_validation.rb
pact_broker-1.3.2.rc1 lib/pact_broker/api/contracts/consumer_version_number_validation.rb
pact_broker-1.3.1 lib/pact_broker/api/contracts/consumer_version_number_validation.rb