File tree Expand file tree Collapse file tree 1 file changed +46
-0
lines changed
spec/unit/resource_controller Expand file tree Collapse file tree 1 file changed +46
-0
lines changed Original file line number Diff line number Diff line change
1
+ require 'spec_helper'
2
+
3
+ describe ActiveAdmin ::ResourceController ::Sidebars do
4
+ let ( :controller ) { Admin ::PostsController }
5
+
6
+ context 'without before_filter' do
7
+ before do
8
+ ActiveAdmin . register Post
9
+ end
10
+
11
+ subject { find_before_filter controller , :skip_sidebar! }
12
+
13
+ it { should set_skip_sidebar_to nil }
14
+ end
15
+
16
+ describe '#skip_sidebar!' do
17
+ before do
18
+ ActiveAdmin . register Post do
19
+ before_filter :skip_sidebar!
20
+ end
21
+ end
22
+
23
+ subject { find_before_filter controller , :skip_sidebar! }
24
+
25
+ it { should set_skip_sidebar_to true }
26
+ end
27
+
28
+ def find_before_filter ( controller , filter )
29
+ #raise controller._process_action_callbacks.map(&:filter).inspect
30
+ controller . _process_action_callbacks . detect { |f | f . raw_filter == filter . to_sym }
31
+ end
32
+
33
+ RSpec ::Matchers . define :set_skip_sidebar_to do |expected |
34
+ match do |filter |
35
+ klass = filter && filter . klass || controller
36
+ object = klass . new
37
+ object . send filter . raw_filter if filter
38
+ @actual = object . instance_variable_get ( :@skip_sidebar )
39
+ @actual == expected
40
+ end
41
+
42
+ failure_message_for_should do |filter |
43
+ message = "expected before_filter to set @skip_sidebar to '#{ expected } ', but was '#{ @actual } '"
44
+ end
45
+ end
46
+ end
You can’t perform that action at this time.
0 commit comments