diff --git a/lib/jirahelper/regex.rb b/lib/jirahelper/regex.rb index 5fb83e1..7a29bab 100644 --- a/lib/jirahelper/regex.rb +++ b/lib/jirahelper/regex.rb @@ -8,6 +8,6 @@ module Regex PROJECT_PATTERN = /(?[a-zA-Z0-9]{1,10})/ ISSUE_PATTERN = /(?#{PROJECT_PATTERN}-[0-9]{1,5}+)/ EMAIL_PATTERN = /(?[\w+\-.]+@[a-z\d\-]+(\.[a-z]+)*\.[a-z]+)/i - AMBIENT_PATTERN = /\s#{ISSUE_PATTERN}/ + AMBIENT_PATTERN = /(\s|^)#{ISSUE_PATTERN}/ end end diff --git a/spec/lita/handlers/jira_spec.rb b/spec/lita/handlers/jira_spec.rb index c24a6a7..6cfe2a9 100644 --- a/spec/lita/handlers/jira_spec.rb +++ b/spec/lita/handlers/jira_spec.rb @@ -189,9 +189,10 @@ end it 'shows details for a detected issue in a message' do + send_message('XYZ-987') send_message('foo XYZ-987 bar') send_message('foo XYZ-987?') - expect(replies.size).to eq(2) + expect(replies.size).to eq(3) end it 'does not show details for a detected issue in a command' do @@ -200,8 +201,10 @@ end it 'does not show details for a issue in a URL-ish context' do + send_message('http://www.example.com/XYZ-987') send_message('http://www.example.com/XYZ-987.html') send_message('http://www.example.com/someother-XYZ-987.html') + send_message('TIL http://ruby-doc.org/core-2.3.0/Enumerable.html#method-i-each_slice') expect(replies.size).to eq(0) end