Sha256: 69c077be4a47fbf8b8f692ffe2c0818161dfa9e0fe9f4e654129b48a41cbb89d

Contents?: true

Size: 726 Bytes

Versions: 3

Compression:

Stored size: 726 Bytes

Contents

require 'spec_helper'

describe RailsAdmin::Config::Fields::Types::Json do
  describe '#parse_input' do
    let(:field) { RailsAdmin.config(FieldTest).fields.detect { |f| f.name == :json_field } }
    before :each do
      RailsAdmin.config do |config|
        config.model FieldTest do
          field :json_field, :json
        end
      end
    end

    it 'parse valid json string' do
      data = {string: 'string', integer: 1, array: [1, 2, 3], object: {bla: 'foo'}}.as_json
      expect(field.parse_input(json_field: data.to_json)).to eq data
    end

    it 'raise JSON::ParserError with invalid json string' do
      expect { field.parse_input(json_field: '{{') }.to raise_error(JSON::ParserError)
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rails_admin-0.6.4 spec/rails_admin/config/fields/types/json_spec.rb
rails_admin-0.6.3 spec/rails_admin/config/fields/types/json_spec.rb
rails_admin-0.6.2 spec/rails_admin/config/fields/types/json_spec.rb