このコミットが含まれているのは:
2026-09-28 01:39:26 +09:00
コミット 3dd13171fc
7個のファイルの変更、96行の追加、29行の削除
-2
ファイルの表示
@@ -14,7 +14,6 @@ RSpec.describe 'Locale propagation on write paths', type: :request do
expect(tag_name).to have_attributes(
script_code: expected_locale.script_code, primary_flg: true)
expect(tag_name.tag_id).to be_present
expect(tag_name.tag.tag_name_id).to eq(tag_name.id)
tag_name.tag
end
@@ -206,7 +205,6 @@ RSpec.describe 'Locale propagation on write paths', type: :request do
.to have_attributes(
script_code: 'Latn',
tag_id: tag.id, primary_flg: false, language_code: 'en')
expect(tag.reload.tag_name_id).to eq(english_name.id)
primary = TagName.find_by!(tag_id: tag.id, language_code: 'en', primary_flg: true)
expect(primary).to have_attributes(name: 'english_original', script_code: 'Latn')
end
+4 -3
ファイルの表示
@@ -36,10 +36,11 @@ RSpec.describe 'TagVersions API', type: :request do
category: category,
deprecated_at: deprecated_at,
aliases: Array(aliases).join(' '),
names: [{ language_code: 'ja', name: name, script_code: 'Jpan',
primary_flg: true }] + Array(aliases).map { |alias_name|
names: [{ language_code: 'ja', name:, script_code: 'Jpan',
primary_flg: true,
auto_generated: false }] + Array(aliases).map { |alias_name|
{ language_code: 'ja', name: alias_name, script_code: 'Jpan',
primary_flg: false }
primary_flg: false, auto_generated: false }
},
parent_tag_ids: Array(parent_tags).map(&:id).join(' '),
created_by_user: created_by_user,
+26 -12
ファイルの表示
@@ -18,6 +18,18 @@ RSpec.describe 'Tags API', type: :request do
response_tags.map { |t| t.fetch('name') }
end
def version_primary_name(version, language_code)
version.names.find { |name|
name['language_code'] == language_code && name['primary_flg']
}.fetch('name')
end
def version_alias_names(version, language_code)
version.names.filter_map { |name|
name['name'] if name['language_code'] == language_code && !name['primary_flg']
}
end
def dummy_material_upload(filename: 'dummy.png', type: 'image/png', body: 'dummy')
Rack::Test::UploadedFile.new(StringIO.new(body), type, original_filename: filename)
end
@@ -687,11 +699,11 @@ RSpec.describe 'Tags API', type: :request do
expect(versions.map(&:event_type)).to eq(['create', 'update'])
expect(versions.first.name).to eq('spec_tag')
expect(version_primary_name(versions.first, 'ja')).to eq('spec_tag')
expect(versions.first.category).to eq('general')
expect(versions.first.aliases.split).to include('unko')
expect(version_alias_names(versions.first, 'ja')).to include('unko')
expect(versions.second.name).to eq('new_tag_name')
expect(version_primary_name(versions.second, 'ja')).to eq('new_tag_name')
expect(versions.second.category).to eq('meme')
expect(versions.second.created_by_user_id).to eq(member_user.id)
end
@@ -1261,13 +1273,13 @@ RSpec.describe 'Tags API', type: :request do
expect(versions.map(&:event_type)).to eq(['create', 'update'])
expect(versions.first.name).to eq('spec_tag')
expect(version_primary_name(versions.first, 'ja')).to eq('spec_tag')
expect(versions.first.category).to eq('general')
expect(versions.first.aliases.split).to include('unko')
expect(version_alias_names(versions.first, 'ja')).to include('unko')
expect(versions.second.name).to eq('put_versioned_tag')
expect(version_primary_name(versions.second, 'ja')).to eq('put_versioned_tag')
expect(versions.second.category).to eq('meta')
expect(versions.second.aliases.split).to include('spec_tag')
expect(version_alias_names(versions.second, 'ja')).to include('spec_tag')
expect(versions.second.created_by_user_id).to eq(member_user.id)
end
@@ -1307,8 +1319,8 @@ RSpec.describe 'Tags API', type: :request do
version = tag.tag_versions.order(:version_no).last
expect(version.event_type).to eq('update')
expect(version.name).to eq('spec_tag')
expect(version.aliases.split).to contain_exactly('put_roundtrip_b', 'unko')
expect(version_primary_name(version, 'ja')).to eq('spec_tag')
expect(version_alias_names(version, 'ja')).to contain_exactly('put_roundtrip_b', 'unko')
end
it 'parent tag の snapshot も作成する' do
@@ -1490,10 +1502,11 @@ RSpec.describe 'Tags API', type: :request do
old_owner_versions = old_owner.tag_versions.order(:version_no)
expect(old_owner_versions.first.event_type).to eq('create')
expect(old_owner_versions.first.aliases.split).to include('put_stolen_alias')
expect(version_alias_names(old_owner_versions.first, 'ja')).to include('put_stolen_alias')
expect(old_owner_versions.second.event_type).to eq('update')
expect(old_owner_versions.second.aliases.split).not_to include('put_stolen_alias')
expect(version_alias_names(old_owner_versions.second, 'ja'))
.not_to include('put_stolen_alias')
end
it '別 tag の alias 名を rename で奪へる' do
@@ -1536,7 +1549,8 @@ RSpec.describe 'Tags API', type: :request do
old_owner_versions = old_owner.tag_versions.order(:version_no)
expect(old_owner_versions.last.event_type).to eq('update')
expect(old_owner_versions.last.aliases.split).not_to include('put_alias_collision_name')
expect(version_alias_names(old_owner_versions.last, 'ja'))
.not_to include('put_alias_collision_name')
expect(wiki_page.reload.tag_name).to eq(primary_tag_name_for(tag, 'ja'))
end