Sha256: 184b8fb1f87f5faf96327445c861cec2feb9614c5c0bc08f2b67f0d7b2c5d78d
Contents?: true
Size: 684 Bytes
Versions: 1
Compression:
Stored size: 684 Bytes
Contents
RSpec.describe Dry::Validation::Schema, 'defining an option with default value' do subject(:schema) do Dry::Validation.Schema do configure do option :db, -> { DB } def unique?(name, value) DB.none? { |item| item[name] == value } end end required(:email) { filled? & unique?(:email) } end end before do DB = [{ email: 'jane@doe' }] end after do Object.send(:remove_const, :DB) end it 'uses external dependency set by option with a default value' do expect(schema.db).to be(DB) expect(schema.(email: 'jade@doe')).to be_success expect(schema.(email: 'jane@doe')).to be_failure end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
dry-validation-0.8.0 | spec/integration/schema/option_with_default_spec.rb |