spec/json_spec.rb in bubble-wrap-0.1.2 vs spec/json_spec.rb in bubble-wrap-0.2.0

- old
+ new

@@ -91,11 +91,11 @@ before do @obj = { foo: 'bar', 'bar' => 'baz', baz: 123, foobar: [1,2,3], - foobaz: {a: 1, b: 2} + foobaz: {'a' => 1, 'b' => 2} } end it "should generate from a hash" do json = BubbleWrap::JSON.generate(@obj) @@ -104,11 +104,21 @@ end it "should encode and decode and object losslessly" do json = BubbleWrap::JSON.generate(@obj) obj = BubbleWrap::JSON.parse(json) - obj.keys.sort.should == @obj.keys.sort - obj.values.sort.should == @obj.values.sort + + obj["foo"].should == 'bar' + obj["bar"].should == 'baz' + obj["baz"].should == 123 + obj["foobar"].should == [1,2,3] + obj["foobaz"].should == {"a" => 1, "b" => 2} + + # TODO Find out why following line cause runtime error + # obj.keys.sort.should == @obj.keys.sort + # obj.values.sort.should == @obj.values.sort + obj.keys.sort { |a, b| a.to_s <=> b.to_s }.should == @obj.keys.sort { |a, b| a.to_s <=> b.to_s } + obj.values.sort { |a, b| a.to_s <=> b.to_s }.should == @obj.values.sort { |a, b| a.to_s <=> b.to_s } end end end