summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Van Dyk <joe@tanga.com>2016-08-01 09:46:43 -0700
committersazor <sazor.mail@gmail.com>2016-10-28 11:57:12 +0300
commit018551cfd090f370e0887db431fe8131ba96f6d4 (patch)
tree8a8c83f27ed4a6856f5fedc0e8996751c796387c
parent9c38812a3e54e1313e826d945e03a311367ddb1e (diff)
downloadhashie-018551cfd090f370e0887db431fe8131ba96f6d4.tar.gz
failing test for Dash default with proc not working with AS as_json
-rw-r--r--spec/hashie/dash_spec.rb11
-rw-r--r--spec/spec_helper.rb4
2 files changed, 15 insertions, 0 deletions
diff --git a/spec/hashie/dash_spec.rb b/spec/hashie/dash_spec.rb
index 453d62f..cc03128 100644
--- a/spec/hashie/dash_spec.rb
+++ b/spec/hashie/dash_spec.rb
@@ -12,6 +12,10 @@ class DashTest < Hashie::Dash
property :count, default: 0
end
+class DashTestDefaultProc < Hashie::Dash
+ property :fields, default: -> { [] }
+end
+
class DashNoRequiredTest < Hashie::Dash
property :first_name
property :email
@@ -51,6 +55,13 @@ class DeferredWithSelfTest < Hashie::Dash
property :updated_at, default: ->(test) { test.created_at }
end
+describe DashTestDefaultProc do
+ it "as_json behaves correctly with default proc" do
+ object = described_class.new
+ expect(object.as_json).to be == { "fields" => [] }
+ end
+end
+
describe DashTest do
def property_required_error(property)
[ArgumentError, "The property '#{property}' is required for #{subject.class.name}."]
diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
index 2cd68e3..726568c 100644
--- a/spec/spec_helper.rb
+++ b/spec/spec_helper.rb
@@ -10,6 +10,10 @@ require 'hashie'
require 'rspec/pending_for'
require './spec/support/ruby_version_check'
+# NOTE: should this be here?
+require 'active_support'
+require 'active_support/core_ext'
+
RSpec.configure do |config|
config.extend RubyVersionCheck
config.expect_with :rspec do |expect|