From d7660f07b46c98b80364a034a5c1a839d7290820 Mon Sep 17 00:00:00 2001 From: Aaron Lasseigne Date: Thu, 13 Feb 2014 21:35:59 -0600 Subject: [PATCH] only add an instance variable if there is an attr reader --- lib/active_interaction/base.rb | 2 +- spec/active_interaction/base_spec.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/active_interaction/base.rb b/lib/active_interaction/base.rb index f54959c3..f75f609a 100644 --- a/lib/active_interaction/base.rb +++ b/lib/active_interaction/base.rb @@ -200,7 +200,7 @@ def process_inputs(inputs) inputs.each do |key, value| fail InvalidValueError, key.inspect if self.class.send(:reserved?, key) - instance_variable_set("@#{key}", value) + instance_variable_set("@#{key}", value) if respond_to?(key) end self.class.filters.each do |name, filter| diff --git a/spec/active_interaction/base_spec.rb b/spec/active_interaction/base_spec.rb index f1cceb03..832339ca 100644 --- a/spec/active_interaction/base_spec.rb +++ b/spec/active_interaction/base_spec.rb @@ -54,7 +54,7 @@ def execute end end - context 'with an attribute' do + context 'with a reader' do let(:described_class) do Class.new(TestInteraction) do attr_reader :thing