diff options
Diffstat (limited to 'spec/hashie')
-rw-r--r-- | spec/hashie/dash_spec.rb | 10 | ||||
-rw-r--r-- | spec/hashie/extensions/ignore_undeclared_spec.rb | 12 |
2 files changed, 22 insertions, 0 deletions
diff --git a/spec/hashie/dash_spec.rb b/spec/hashie/dash_spec.rb index 5f3bfe3..3adfc8f 100644 --- a/spec/hashie/dash_spec.rb +++ b/spec/hashie/dash_spec.rb @@ -606,3 +606,13 @@ context 'with method access' do it { is_expected.to eq true } end end + +RSpec.describe Hashie::Dash do + let(:test) do + Class.new(Hashie::Dash) do + property :description, default: '' + end + end + + include_examples 'Dash default handling', :description +end diff --git a/spec/hashie/extensions/ignore_undeclared_spec.rb b/spec/hashie/extensions/ignore_undeclared_spec.rb index 50c4f31..6f2d818 100644 --- a/spec/hashie/extensions/ignore_undeclared_spec.rb +++ b/spec/hashie/extensions/ignore_undeclared_spec.rb @@ -27,6 +27,18 @@ describe Hashie::Extensions::IgnoreUndeclared do hash = subject.new(city: 'Toronto') expect { hash.country = 'Canada' }.to raise_error(NoMethodError) end + + context 'with a default value' do + let(:test) do + Class.new(Hashie::Trash) do + include Hashie::Extensions::IgnoreUndeclared + + property :description, from: :desc, default: '' + end + end + + include_examples 'Dash default handling', :description, :desc + end end context 'combined with DeepMerge' do |