From 4e6065c448a3461e55141c1d6ec4f1603fd4efa9 Mon Sep 17 00:00:00 2001 From: Rodrigo Souto Date: Thu, 29 Nov 2012 15:17:39 +0000 Subject: [PATCH] [stoa] Avoiding crash if no field is passed to matches --- plugins/stoa/lib/stoa_plugin/usp_user.rb | 2 +- plugins/stoa/test/unit/usp_user_test.rb | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/plugins/stoa/lib/stoa_plugin/usp_user.rb b/plugins/stoa/lib/stoa_plugin/usp_user.rb index 032c66a..ff11238 100644 --- a/plugins/stoa/lib/stoa_plugin/usp_user.rb +++ b/plugins/stoa/lib/stoa_plugin/usp_user.rb @@ -15,7 +15,7 @@ class StoaPlugin::UspUser < ActiveRecord::Base def self.matches?(usp_id, field, value) usp_id.to_s.gsub!(/[.-]/,'') user = StoaPlugin::UspUser.find_by_codpes(usp_id.to_i) - return false if user.nil? || !user.respond_to?(field) || value.blank? + return false if user.nil? || field.blank? || !user.respond_to?(field) || value.blank? case field.to_sym when :cpf value.to_s.gsub!(/[.-]/,'') diff --git a/plugins/stoa/test/unit/usp_user_test.rb b/plugins/stoa/test/unit/usp_user_test.rb index 2fa9704..e4a9481 100644 --- a/plugins/stoa/test/unit/usp_user_test.rb +++ b/plugins/stoa/test/unit/usp_user_test.rb @@ -43,5 +43,9 @@ class StoaPlugin::UspUserTest < ActiveSupport::TestCase assert StoaPlugin::UspUser.exists?('0000123456') assert StoaPlugin::UspUser.matches?(123456, :cpf, '00012345678') end + + should 'return false if field is nil' do + assert !StoaPlugin::UspUser.matches?(123456, nil, '00012345678') + end end -- libgit2 0.21.2