File tree Expand file tree Collapse file tree 2 files changed +18
-3
lines changed Expand file tree Collapse file tree 2 files changed +18
-3
lines changed Original file line number Diff line number Diff line change @@ -48,7 +48,9 @@ def initialize(entity)
48
48
end
49
49
50
50
def excluded?
51
- @excluded ||= !RailsAdmin ::AbstractModel . all . collect ( &:model_name ) . include? ( abstract_model . try ( :model_name ) )
51
+ return @excluded if defined? ( @excluded )
52
+
53
+ @excluded = !RailsAdmin ::AbstractModel . all . collect ( &:model_name ) . include? ( abstract_model . try ( :model_name ) )
52
54
end
53
55
54
56
def object_label
Original file line number Diff line number Diff line change 11
11
end
12
12
13
13
it 'returns false when included, true otherwise' do
14
- expect ( RailsAdmin . config ( Player ) . excluded? ) . to be_truthy
15
- expect ( RailsAdmin . config ( Comment ) . excluded? ) . to be_falsey
14
+ allow ( RailsAdmin ::AbstractModel ) . to receive ( :all ) . and_call_original
15
+
16
+ player_config = RailsAdmin . config ( Player )
17
+ expect ( player_config . excluded? ) . to be_truthy
18
+ expect ( RailsAdmin ::AbstractModel ) . to have_received ( :all ) . once
19
+ # Calling a second time uses the cached value.
20
+ expect ( player_config . excluded? ) . to be_truthy
21
+ expect ( RailsAdmin ::AbstractModel ) . to have_received ( :all ) . once
22
+
23
+ comment_config = RailsAdmin . config ( Comment )
24
+ expect ( comment_config . excluded? ) . to be_falsey
25
+ expect ( RailsAdmin ::AbstractModel ) . to have_received ( :all ) . twice
26
+ # Calling a second time uses the cached value.
27
+ expect ( comment_config . excluded? ) . to be_falsey
28
+ expect ( RailsAdmin ::AbstractModel ) . to have_received ( :all ) . twice
16
29
end
17
30
end
18
31
You can’t perform that action at this time.
0 commit comments