diff --git a/app/models/status_message.rb b/app/models/status_message.rb index 579dc06c4..3ba4d38fb 100644 --- a/app/models/status_message.rb +++ b/app/models/status_message.rb @@ -68,7 +68,7 @@ class StatusMessage < Post end def nsfw? - self.raw_message.include?('#nsfw') + self.raw_message.match(/#nsfw/i) end def formatted_message(opts={}) diff --git a/spec/models/status_message_spec.rb b/spec/models/status_message_spec.rb index 8202c021b..300d8b858 100644 --- a/spec/models/status_message_spec.rb +++ b/spec/models/status_message_spec.rb @@ -226,6 +226,18 @@ STR end end + describe "#nsfw?" do + it 'returns MatchObject (true) if the post contains #nsfw (however capitalised)' do + status = Factory(:status_message, :text => "This message is #nSFw") + status.nsfw?.should be_true + end + + it 'returns nil (false) if the post does not contain #nsfw' do + status = Factory(:status_message, :text => "This message is #sFW") + status.nsfw?.should be_false + end + end + describe "#notify_person" do it 'notifies the person mentioned' do Notification.should_receive(:notify).with(alice, anything, anything)