Sha256: 0b7f94343af280c33f523fa8eeae8c567463981de2b275caec0a02ae9897ecbd

Contents?: true

Size: 1.22 KB

Versions: 62

Compression:

Stored size: 1.22 KB

Contents

require 'spec_helper'

describe ActiveAdmin::ResourceController::Sidebars do
  let(:controller){ Admin::PostsController }

  context 'without before_filter' do
    before do
      ActiveAdmin.register Post
    end

    subject { find_before_filter controller, :skip_sidebar! }

    it { should set_skip_sidebar_to nil }
  end

  describe '#skip_sidebar!' do
    before do
      ActiveAdmin.register Post do
        before_filter :skip_sidebar!
      end
    end

    subject { find_before_filter controller, :skip_sidebar! }

    it { should set_skip_sidebar_to true }
  end

  def find_before_filter(controller, filter)
    #raise controller._process_action_callbacks.map(&:filter).inspect
    controller._process_action_callbacks.detect { |f| f.raw_filter == filter.to_sym }
  end

  RSpec::Matchers.define :set_skip_sidebar_to do |expected|
    match do |filter|
      klass = filter && filter.klass || controller
      object = klass.new
      object.send filter.raw_filter if filter
      @actual = object.instance_variable_get(:@skip_sidebar)
      @actual == expected
    end

    failure_message_for_should do |filter|
      message = "expected before_filter to set @skip_sidebar to '#{expected}', but was '#{@actual}'"
    end
  end
end

Version data entries

62 entries across 62 versions & 4 rubygems

Version Path
activeadmin-0.6.6 spec/unit/resource_controller/sidebars_spec.rb
activeadmin-0.6.5 spec/unit/resource_controller/sidebars_spec.rb
activeadmin-0.6.4 spec/unit/resource_controller/sidebars_spec.rb
yousty-activeadmin-1.0.4.pre spec/unit/resource_controller/sidebars_spec.rb
yousty-activeadmin-1.0.3.pre spec/unit/resource_controller/sidebars_spec.rb
yousty-activeadmin-1.0.2.pre spec/unit/resource_controller/sidebars_spec.rb
activeadmin-0.6.3 spec/unit/resource_controller/sidebars_spec.rb
yousty-activeadmin-1.0.1.pre spec/unit/resource_controller/sidebars_spec.rb
yousty-activeadmin-1.0.0.pre spec/unit/resource_controller/sidebars_spec.rb
activeadmin-0.6.2 spec/unit/resource_controller/sidebars_spec.rb
activeadmin-0.6.1 spec/unit/resource_controller/sidebars_spec.rb
aa-rails4-0.6.0 spec/unit/resource_controller/sidebars_spec.rb
lalala-4.0.0.dev.141 vendor/deps/active_admin/spec/unit/resource_controller/sidebars_spec.rb
lalala-4.0.0.dev.136 vendor/deps/active_admin/spec/unit/resource_controller/sidebars_spec.rb
lalala-4.0.0.dev.135 vendor/deps/active_admin/spec/unit/resource_controller/sidebars_spec.rb
lalala-4.0.0.dev.134 vendor/deps/active_admin/spec/unit/resource_controller/sidebars_spec.rb
lalala-4.0.0.dev.133 vendor/deps/active_admin/spec/unit/resource_controller/sidebars_spec.rb
lalala-4.0.0.dev.132 vendor/deps/active_admin/spec/unit/resource_controller/sidebars_spec.rb
lalala-4.0.0.dev.131 vendor/deps/active_admin/spec/unit/resource_controller/sidebars_spec.rb
lalala-4.0.0.dev.129 vendor/deps/active_admin/spec/unit/resource_controller/sidebars_spec.rb