Add uniqueness validation to url column in Releases::Link model
Add test Add changelog
This commit is contained in:
parent
ba5a9033cf
commit
50768a25ec
|
@ -6,7 +6,7 @@ module Releases
|
||||||
|
|
||||||
belongs_to :release
|
belongs_to :release
|
||||||
|
|
||||||
validates :url, presence: true, url: true
|
validates :url, presence: true, url: true, uniqueness: { scope: :release }
|
||||||
validates :name, presence: true, uniqueness: { scope: :release }
|
validates :name, presence: true, uniqueness: { scope: :release }
|
||||||
|
|
||||||
scope :sorted, -> { order(created_at: :desc) }
|
scope :sorted, -> { order(created_at: :desc) }
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
title: Add uniqueness validation to url column in Releases::Link model
|
||||||
|
merge_request: 24223
|
||||||
|
author:
|
||||||
|
type: other
|
|
@ -31,6 +31,16 @@ describe Releases::Link do
|
||||||
end.to raise_error(ActiveRecord::RecordInvalid)
|
end.to raise_error(ActiveRecord::RecordInvalid)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
context 'when duplicate url is added to a release' do
|
||||||
|
let!(:link) { create(:release_link, url: 'http://gitlab.com', release: release) }
|
||||||
|
|
||||||
|
it 'raises an error' do
|
||||||
|
expect do
|
||||||
|
create(:release_link, url: 'http://gitlab.com', release: release)
|
||||||
|
end.to raise_error(ActiveRecord::RecordInvalid)
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe '.sorted' do
|
describe '.sorted' do
|
||||||
|
|
Loading…
Reference in New Issue