Sha256: 7583c8c92c4083f34774005fbf8e15c97e44191d2f30398aff4f1e175ae4e6ea

Contents?: true

Size: 1.78 KB

Versions: 3

Compression:

Stored size: 1.78 KB

Contents

require 'rails_helper'

module ActiveAdmin
  RSpec.describe Resource, "Attributes" do
    let(:application) { ActiveAdmin::Application.new }
    let(:namespace) { ActiveAdmin::Namespace.new application, :admin }
    let(:resource_config) { ActiveAdmin::Resource.new namespace, Post }

    describe "#resource_attributes" do
      subject do
        resource_config.resource_attributes
      end

      it 'should return attributes hash' do
        expect(subject).to eq(author_id: :author,
                               body: :body,
                               created_at: :created_at,
                               custom_category_id: :category,
                               foo_id: :foo_id,
                               position: :position,
                               published_date: :published_date,
                               starred: :starred,
                               title: :title,
                               updated_at: :updated_at)
      end

      it 'does not return sensitive attributes' do
        keep = ActiveAdmin.application.filter_attributes
        ActiveAdmin.application.filter_attributes = [:published_date]
        expect(subject).to_not include :published_date
        ActiveAdmin.application.filter_attributes = keep
      end
    end

    describe "#association_columns" do
      subject do
        resource_config.association_columns
      end

      it 'should return associations' do
        expect(subject).to eq([:author, :category])
      end
    end

    describe "#content_columns" do
      subject do
        resource_config.content_columns
      end

      it 'should return columns without associations' do
        expect(subject).to eq([:title, :body, :published_date, :position, :starred, :foo_id, :created_at, :updated_at])
      end
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
activeadmin-rails-1.7.2 spec/unit/resource/attributes_spec.rb
activeadmin-rails-1.7.1 spec/unit/resource/attributes_spec.rb
activeadmin-rails-1.7.0 spec/unit/resource/attributes_spec.rb