diff --git a/lib/rubocop/cop/internal_affairs/example_description.rb b/lib/rubocop/cop/internal_affairs/example_description.rb index 1262320baea..7bf147e3a09 100644 --- a/lib/rubocop/cop/internal_affairs/example_description.rb +++ b/lib/rubocop/cop/internal_affairs/example_description.rb @@ -80,10 +80,14 @@ def on_send(node) private def check_description(description, regexps, message) - return unless regexps.any? { |regexp| regexp.match?(description.value) } + return unless regexps.any? { |regexp| regexp.match?(string_contents(description)) } add_offense(description, message: message) end + + def string_contents(node) + node.str_type? ? node.value : node.source + end end end end diff --git a/spec/rubocop/cop/internal_affairs/example_description_spec.rb b/spec/rubocop/cop/internal_affairs/example_description_spec.rb index 6c20c5e3940..2002a05adad 100644 --- a/spec/rubocop/cop/internal_affairs/example_description_spec.rb +++ b/spec/rubocop/cop/internal_affairs/example_description_spec.rb @@ -46,6 +46,14 @@ RUBY end + it 'does not crash when given a proper description that is split with +' do + expect_no_offenses(<<~RUBY) + it "does " + 'not register an offense' do + expect_no_offense('code') + end + RUBY + end + it 'does not register an offense when given an unexpected description' do expect_no_offenses(<<~RUBY) it 'foo bar baz' do