Sha256: 80157e253b681739f81cdd3deac61dc14183cf383d20153b2ea6365b17e35af8

Contents?: true

Size: 800 Bytes

Versions: 1

Compression:

Stored size: 800 Bytes

Contents

require 'dry/validation/predicates'

RSpec.shared_examples 'predicates' do
  let(:none?) { Dry::Validation::Predicates[:none?] }

  let(:str?) { Dry::Validation::Predicates[:str?] }

  let(:min_size?) { Dry::Validation::Predicates[:min_size?] }

  let(:key?) { Dry::Validation::Predicates[:key?] }

  let(:eql?) { Dry::Validation::Predicates[:eql?] }
end

RSpec.shared_examples 'a passing predicate' do
  let(:predicate) { Dry::Validation::Predicates[predicate_name] }

  it do
    arguments_list.each do |args|
      expect(predicate.call(*args)).to be true
    end
  end
end

RSpec.shared_examples 'a failing predicate' do
  let(:predicate) { Dry::Validation::Predicates[predicate_name] }

  it do
    arguments_list.each do |args|
      expect(predicate.call(*args)).to be false
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
dry-validation-0.3.0 spec/shared/predicates.rb