Fix antenna fabricator tests and move duplicate check to db

This commit is contained in:
KMY 2023-08-22 13:33:20 +09:00
parent e656ab15a1
commit df0b1a4632
8 changed files with 34 additions and 19 deletions

View file

@ -14,14 +14,11 @@
class AntennaDomain < ApplicationRecord
belongs_to :antenna
validate :duplicate_domain
validate :limit_per_antenna
private
validates :name, uniqueness: { scope: :antenna_id }
def duplicate_domain
raise Mastodon::ValidationError, I18n.t('antennas.errors.duplicate_domain') if AntennaDomain.exists?(antenna_id: antenna_id, name: name, exclude: exclude)
end
private
def limit_per_antenna
raise Mastodon::ValidationError, I18n.t('antennas.errors.limit.domains') if AntennaDomain.where(antenna_id: antenna_id).count >= Antenna::DOMAINS_PER_ANTENNA_LIMIT