diff options
author | tyler-ball <tyleraball@gmail.com> | 2014-09-24 09:18:47 -0700 |
---|---|---|
committer | tyler-ball <tyleraball@gmail.com> | 2014-10-07 16:39:56 -0700 |
commit | 1c7b4629240c49e02c482da6de1a6a2cc574304e (patch) | |
tree | 4ac2fdc415837aca9b15e6c93debda44858cbf9b /spec/unit/json_compat_spec.rb | |
parent | 1343bdfff0d54e20b923211f6697d42c484c1627 (diff) | |
download | chef-1c7b4629240c49e02c482da6de1a6a2cc574304e.tar.gz |
Trying to eradicate all traces of the JSON gem from Chef
Diffstat (limited to 'spec/unit/json_compat_spec.rb')
-rw-r--r-- | spec/unit/json_compat_spec.rb | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/spec/unit/json_compat_spec.rb b/spec/unit/json_compat_spec.rb index e355a47faa..5951f0cc47 100644 --- a/spec/unit/json_compat_spec.rb +++ b/spec/unit/json_compat_spec.rb @@ -58,13 +58,17 @@ describe Chef::JSONCompat do describe "when pretty printing an object that defines #to_json" do class Foo def to_json(*a) - {'foo' => 1234}.to_json(*a) + Chef::JSONCompat.to_json({'foo' => 1234, 'bar' => {'baz' => 5678}}, *a) end end it "should work" do f = Foo.new - expect(Chef::JSONCompat.to_json_pretty(f)).to eql("{\n \"foo\": 1234\n}\n") + expect(Chef::JSONCompat.to_json_pretty(f)).to eql("{\n \"foo\": 1234,\n \"bar\": {\n \"baz\": 5678\n }\n}\n") + end + + include_examples "to_json equalivent to Chef::JSONCompat.to_json" do + let(:subject) { Foo.new } end end @@ -97,4 +101,9 @@ describe Chef::JSONCompat do end end end + + it "should not allow the json gem to be required because of the spec_helper" do + # We want to prevent ourselves from writing code that requires 'json' + expect { require 'json' }.to raise_error(LoadError) + end end |