Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 257731168f | |||
| 0ff7fdf78a |
@@ -336,8 +336,27 @@ class TagsController < ApplicationController
|
|||||||
end
|
end
|
||||||
|
|
||||||
def update_aliases! tag, alias_names
|
def update_aliases! tag, alias_names
|
||||||
|
alias_names = alias_names.uniq
|
||||||
|
|
||||||
|
affected_tags = [tag]
|
||||||
|
|
||||||
current_aliases = tag.tag_name.aliases.to_a
|
current_aliases = tag.tag_name.aliases.to_a
|
||||||
|
|
||||||
|
current_aliases.each do |alias_tag_name|
|
||||||
|
next if alias_names.include?(alias_tag_name.name)
|
||||||
|
|
||||||
|
affected_tags << alias_tag_name.canonical&.tag
|
||||||
|
end
|
||||||
|
|
||||||
|
alias_names.each do |alias_name|
|
||||||
|
alias_tag_name = TagName.find_undiscard_or_create_by!(name: alias_name)
|
||||||
|
affected_tags << alias_tag_name.canonical&.tag
|
||||||
|
end
|
||||||
|
|
||||||
|
affected_tags.compact.uniq.each do |affected_tag|
|
||||||
|
TagVersioning.ensure_snapshot!(affected_tag, created_by_user: current_user)
|
||||||
|
end
|
||||||
|
|
||||||
current_aliases.each do |alias_tag_name|
|
current_aliases.each do |alias_tag_name|
|
||||||
next if alias_names.include?(alias_tag_name.name)
|
next if alias_names.include?(alias_tag_name.name)
|
||||||
|
|
||||||
@@ -348,6 +367,10 @@ class TagsController < ApplicationController
|
|||||||
alias_tag_name = TagName.find_undiscard_or_create_by!(name: alias_name)
|
alias_tag_name = TagName.find_undiscard_or_create_by!(name: alias_name)
|
||||||
alias_tag_name.update!(canonical: tag.tag_name)
|
alias_tag_name.update!(canonical: tag.tag_name)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
affected_tags.compact.uniq.each do |affected_tag|
|
||||||
|
record_tag_version!(affected_tag, event_type: :update, created_by_user: current_user)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def update_parent_tags! tag, parent_names
|
def update_parent_tags! tag, parent_names
|
||||||
|
|||||||
@@ -964,8 +964,6 @@ RSpec.describe 'Tags API', type: :request do
|
|||||||
end
|
end
|
||||||
|
|
||||||
it '別名を他 tag から奪った場合、奪はれた側の tag version も作成する' do
|
it '別名を他 tag から奪った場合、奪はれた側の tag version も作成する' do
|
||||||
pending '#329 で対応予定'
|
|
||||||
|
|
||||||
old_owner = Tag.create!(
|
old_owner = Tag.create!(
|
||||||
tag_name: TagName.create!(name: 'put_alias_old_owner'),
|
tag_name: TagName.create!(name: 'put_alias_old_owner'),
|
||||||
category: :general
|
category: :general
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ RSpec.describe 'Wiki body search', type: :request do
|
|||||||
let!(:user) { create_member_user! }
|
let!(:user) { create_member_user! }
|
||||||
|
|
||||||
it 'searches wiki pages by body text' do
|
it 'searches wiki pages by body text' do
|
||||||
pending 'Wiki 本文検索実装時に有効化する'
|
pending '#336 で対応予定'
|
||||||
|
|
||||||
Wiki::Commit.create_content!(
|
Wiki::Commit.create_content!(
|
||||||
tag_name: TagName.create!(name: 'wiki_body_search_hit'),
|
tag_name: TagName.create!(name: 'wiki_body_search_hit'),
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ RSpec.describe 'Wiki restore', type: :request do
|
|||||||
end
|
end
|
||||||
|
|
||||||
it 'restores wiki page to previous version' do
|
it 'restores wiki page to previous version' do
|
||||||
pending 'Wiki 版巻き戻し API 実装時に有効化する'
|
pending '#337 で対応予定'
|
||||||
|
|
||||||
page =
|
page =
|
||||||
Wiki::Commit.create_content!(
|
Wiki::Commit.create_content!(
|
||||||
|
|||||||
Reference in New Issue
Block a user