Sha256: e5b901a08ea3a720336a9a56519eee6c351eee1fabb4b9d1b197dd684b3edbbd

Contents?: true

Size: 1.11 KB

Versions: 1

Compression:

Stored size: 1.11 KB

Contents

require 'spec_helper'

describe Lurker::Json::Object do
  let(:klass) { described_class }

  describe '#merge!' do
    context 'when merge a hash with keywords' do
      let(:object) { klass.new('name' => 'razum2um') }
      let(:expected) do
        {
          'description' => '',
          'type' => 'object',
          'additionalProperties' => false,
          'required' => [],
          'properties' => {
            'name' => {
              'description' => '',
              'type' => 'string',
              'example' => 'razum2um'
            },
            'achievement' => {
              'description' => '',
              'type' => 'object',
              'additionalProperties' => false,
              'required' => [],
              'properties' => {
                'type' => {
                  'description' => '',
                  'type' => 'string',
                  'example' => 'unlocked'
                }
              }
            }
          }
        }
      end

      before { object.merge!('achievement' => {'type' => 'unlocked'}) }

      it { expect(object.to_hash).to eq expected }
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
lurker-0.6.4 spec/lurker/json/object_spec.rb