about summary refs log tree commit diff
path: root/spec
diff options
context:
space:
mode:
authorDavid Yip <yipdw@member.fsf.org>2018-06-05 02:49:28 -0500
committerDavid Yip <yipdw@member.fsf.org>2018-06-05 02:49:28 -0500
commita640c322c19013647cbd19ac907dd18b57c2b1b8 (patch)
tree8f50ca6a05dd4c381f311db7d84256974b4d4933 /spec
parent37d495eeeb810127e0c6c62bff865c1ba66f45c8 (diff)
Escape metacharacters in non-whole-word keyword mutes. Fixes #533.
Also addresses #463.
Diffstat (limited to 'spec')
-rw-r--r--spec/models/glitch/keyword_mute_spec.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/spec/models/glitch/keyword_mute_spec.rb b/spec/models/glitch/keyword_mute_spec.rb
index 79225e3b9..443832ac7 100644
--- a/spec/models/glitch/keyword_mute_spec.rb
+++ b/spec/models/glitch/keyword_mute_spec.rb
@@ -79,12 +79,18 @@ RSpec.describe Glitch::KeywordMute, type: :model do
         expect(matcher.matches?('(hot take)')).to be_truthy
       end
 
-      it 'escapes metacharacters in keywords' do
+      it 'escapes metacharacters in whole-word keywords' do
         Glitch::KeywordMute.create!(account: alice, keyword: '(hot take)')
 
         expect(matcher.matches?('(hot take)')).to be_truthy
       end
 
+      it 'escapes metacharacters in non-whole-word keywords' do
+        Glitch::KeywordMute.create!(account: alice, keyword: '(-', whole_word: false)
+
+        expect(matcher.matches?('bad (-)')).to be_truthy
+      end
+
       it 'uses case-folding rules appropriate for more than just English' do
         Glitch::KeywordMute.create!(account: alice, keyword: 'großeltern')