From 04ad814bb992e854927c1bec3422df882f017ab6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Mendon=C3=A7a=20Fran=C3=A7a?= Date: Thu, 19 Dec 2013 17:27:52 -0200 Subject: Make sure multiline string is not accepted by the regexp --- activesupport/lib/active_support/configurable.rb | 2 +- activesupport/test/configurable_test.rb | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'activesupport') diff --git a/activesupport/lib/active_support/configurable.rb b/activesupport/lib/active_support/configurable.rb index bafcadff9a..3dd44e32d8 100644 --- a/activesupport/lib/active_support/configurable.rb +++ b/activesupport/lib/active_support/configurable.rb @@ -107,7 +107,7 @@ module ActiveSupport options = names.extract_options! names.each do |name| - raise NameError.new('invalid config attribute name') unless name =~ /\A[_A-Za-z]\w*\Z/ + raise NameError.new('invalid config attribute name') unless name =~ /\A[_A-Za-z]\w*\z/ reader, reader_line = "def #{name}; config.#{name}; end", __LINE__ writer, writer_line = "def #{name}=(value); config.#{name} = value; end", __LINE__ diff --git a/activesupport/test/configurable_test.rb b/activesupport/test/configurable_test.rb index cb11a4a867..ef847fc557 100644 --- a/activesupport/test/configurable_test.rb +++ b/activesupport/test/configurable_test.rb @@ -95,10 +95,18 @@ class ConfigurableActiveSupport < ActiveSupport::TestCase config_accessor "invalid attribute name" end end + + assert_raises NameError do + Class.new do + include ActiveSupport::Configurable + config_accessor "invalid\nattribute" + end + end + assert_raises NameError do Class.new do include ActiveSupport::Configurable - config_accessor "invalid attribute\nname" + config_accessor "invalid\n" end end end -- cgit v1.2.3