spec/integration/yard/sinclair/add_method_spec.rb in sinclair-1.14.2 vs spec/integration/yard/sinclair/add_method_spec.rb in sinclair-1.15.0

- old
+ new

@@ -5,38 +5,39 @@ describe 'yard Sinclair#add_method' do describe 'Using string code to add a string defined method' do let(:klass) { Class.new(Person) } it 'creates new method' do - builder = Sinclair.new(klass) - builder.add_method(:full_name, '[first_name, last_name].join(" ")') - builder.build + Sinclair.build(klass) do + add_method(:full_name, '[first_name, last_name].join(" ")') + end expect(klass.new('john', 'wick').full_name).to eq('john wick') end end describe 'Using block to add a block method' do let(:klass) { Class.new(Person) } it 'creates new method' do - builder = Sinclair.new(klass) - builder.add_method(:bond_name) { "#{last_name}, #{first_name} #{last_name}" } - builder.build + Sinclair.build(klass) do + add_method(:bond_name) { "#{last_name}, #{first_name} #{last_name}" } + end expect(klass.new('john', 'wick').bond_name).to eq('wick, john wick') end end describe 'Passing type block' do let(:klass) { Class.new(Person) } it 'creates new method' do - builder = Sinclair.new(klass) - builder.add_method(:bond_name, type: :block, cached: true) do - "#{last_name}, #{first_name} #{last_name}" + Sinclair.build(klass) do + add_method(:bond_name, type: :block, cached: true) do + "#{last_name}, #{first_name} #{last_name}" + end end - builder.build + person = klass.new('john', 'wick') expect(person.bond_name).to eq('wick, john wick') person.first_name = 'Johny' expect(person.bond_name).to eq('wick, john wick')