このコミットが含まれているのは:
2026-04-26 20:17:05 +09:00
コミット 5f0c1953ce
6個のファイルの変更319行の追加99行の削除
+46 -16
ファイルの表示
@@ -79,26 +79,56 @@ RSpec.describe Wiki::Commit do
}.to raise_error(Wiki::Commit::Conflict)
end
it 'records tag version when page has corresponding tag' do
tag_name = TagName.create!(name: 'commit_linked_tag')
it 'does not record tag version when corresponding tag has no versions' do
tag_name = TagName.create!(name: 'commit_linked_tag_without_versions')
tag = Tag.create!(tag_name:, category: :general)
page = WikiPage.create!(
tag_name:,
body: '',
created_user: user,
updated_user: user
)
page =
described_class.create_content!(
tag_name:,
body: 'before',
created_by_user: user,
message: 'init')
expect(tag.reload.tag_versions.count).to eq(0)
current_revision_id = page.current_revision.id
expect {
described_class.content!(
page:,
body: 'body',
created_user: user,
message: 'init'
)
}
.to change(WikiVersion, :count).by(1)
.and change { tag.reload.tag_versions.count }.by(1)
page:,
body: 'after',
created_user: user,
message: 'edit',
base_revision_id: current_revision_id)
}.to change(WikiVersion, :count).by(1)
expect(tag.reload.tag_versions.count).to eq(0)
end
it 'does not record tag version when corresponding tag has no versions' do
tag_name = TagName.create!(name: 'commit_linked_tag_without_versions')
tag = Tag.create!(tag_name:, category: :general)
page =
described_class.create_content!(
tag_name:,
body: 'before',
created_by_user: user,
message: 'init')
current_revision_id = page.current_revision.id
expect {
described_class.content!(
page:,
body: 'after',
created_user: user,
message: 'edit',
base_revision_id: current_revision_id)
}.to change(WikiVersion, :count).by(1)
expect(tag.reload.tag_versions.count).to eq(0)
end
end