logo

mastofe

My custom branche(s) on git.pleroma.social/pleroma/mastofe
commit: 7bb28bf7804eadbaeac05e7adb8123a8fb6c5d02
parent: 262adb9791f32162340cec23e3b571655225a3da
Author: Eugen Rochko <eugen@zeonfederated.com>
Date:   Sat,  5 Nov 2016 22:09:51 +0100

Improve @mention regex

Diffstat:

Mapp/models/account.rb2+-
Mapp/services/process_hashtags_service.rb2+-
Mspec/controllers/tags_controller_spec.rb4++++
3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/app/models/account.rb b/app/models/account.rb @@ -1,7 +1,7 @@ class Account < ApplicationRecord include Targetable - MENTION_RE = /(?:^|\s|\.|>)@([a-z0-9_]+(?:@[a-z0-9\.\-]+)?)/i + MENTION_RE = /(?:^|[\s\.>*+])@([a-z0-9_]+(?:@[a-z0-9\.\-]+)?)/i IMAGE_MIME_TYPES = ['image/jpeg', 'image/png', 'image/gif'].freeze # Local users diff --git a/app/services/process_hashtags_service.rb b/app/services/process_hashtags_service.rb @@ -4,7 +4,7 @@ class ProcessHashtagsService < BaseService tags = status.text.scan(Tag::HASHTAG_RE).map(&:first) end - tags.map(&:downcase).each do |tag| + tags.map(&:downcase).uniq.each do |tag| status.tags << Tag.where(name: tag).first_or_initialize(name: tag) end end diff --git a/spec/controllers/tags_controller_spec.rb b/spec/controllers/tags_controller_spec.rb @@ -3,6 +3,10 @@ require 'rails_helper' RSpec.describe TagsController, type: :controller do describe 'GET #show' do + before do + Fabricate(:tag, name: 'test') + end + it 'returns http success' do get :show, params: { id: 'test' } expect(response).to have_http_status(:success)