|
30 | 30 |
|
31 | 31 | it 'makes sure that :format_with as a proc cannot be used with a block' do |
32 | 32 | # rubocop:disable Style/BlockDelimiters |
33 | | - # rubocop:disable Lint/Debugger |
34 | | - expect { subject.expose :name, format_with: proc {} do p 'hi' end }.to raise_error ArgumentError |
35 | | - # rubocop:enable Lint/Debugger |
| 33 | + expect { |
| 34 | + subject.expose :name, format_with: proc {} do |
| 35 | + p 'hi' |
| 36 | + end |
| 37 | + }.to raise_error ArgumentError |
36 | 38 | # rubocop:enable Style/BlockDelimiters |
37 | 39 | end |
38 | 40 |
|
@@ -131,21 +133,21 @@ def initialize(a, b, c) |
131 | 133 |
|
132 | 134 | context 'when expose_nil option is false and block passed' do |
133 | 135 | it 'does not expose if block returns nil' do |
134 | | - subject.expose(:a, expose_nil: false) do |_obj, _options| |
135 | | - nil |
| 136 | + subject.expose(:a, expose_nil: false) do |_obj, options| |
| 137 | + options[:option_a] |
136 | 138 | end |
137 | 139 | subject.expose(:b) |
138 | 140 | subject.expose(:c) |
139 | 141 | expect(subject.represent(model).serializable_hash).to eq(b: nil, c: 'value') |
140 | 142 | end |
141 | 143 |
|
142 | 144 | it 'exposes is block returns a value' do |
143 | | - subject.expose(:a, expose_nil: false) do |_obj, _options| |
144 | | - 100 |
| 145 | + subject.expose(:a, expose_nil: false) do |_obj, options| |
| 146 | + options[:option_a] |
145 | 147 | end |
146 | 148 | subject.expose(:b) |
147 | 149 | subject.expose(:c) |
148 | | - expect(subject.represent(model).serializable_hash).to eq(a: 100, b: nil, c: 'value') |
| 150 | + expect(subject.represent(model, option_a: 100).serializable_hash).to eq(a: 100, b: nil, c: 'value') |
149 | 151 | end |
150 | 152 | end |
151 | 153 | end |
|
0 commit comments