Sha256: 5f5230e83b23914d98e9b5b366a2f01ad8e7b44a014449b2b48548f860dd9eee

Contents?: true

Size: 711 Bytes

Versions: 7

Compression:

Stored size: 711 Bytes

Contents

require 'spec_helper'

describe JsonSchemaSpec::Util do
  describe "#deep_merge" do

    let(:input) do
      [
        { :a => [ { :b => 1, :d => 3, :f => 5 } ], :a2 => true },
        { :a => [ { :c => 2, :e => 4, :f => :_DEL } ] }
      ]
    end

    let(:output) do
      {
        :a  => [ { :b => 1, :c => 2, :d => 3, :e => 4 } ],
        :a2 => true
      }
    end

    it "handles hashes with arrays" do
      result = JsonSchemaSpec::Util.deep_merge(input[0], input[1])
      expect(result).to eq(output)
    end

    it "handles arrays with hashes" do
      result = JsonSchemaSpec::Util.deep_merge(
        [ input[0] ], [ input[1] ]
      )
      expect(result).to eq([ output ])
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
json_schema_spec-0.1.5 spec/json_schema_spec/util_spec.rb
json_schema_spec-0.1.4 spec/json_schema_spec/util_spec.rb
json_schema_spec-0.1.3 spec/json_schema_spec/util_spec.rb
json_schema_spec-0.1.2 spec/json_schema_spec/util_spec.rb
json_schema_spec-0.1.1 spec/json_schema_spec/util_spec.rb
json_schema_spec-0.1.0 spec/json_schema_spec/util_spec.rb
json_schema_spec-0.0.9 spec/json_schema_spec/util_spec.rb