Enable validate: true on CustomFilter#action (#34434)

This commit is contained in:
Matt Jankowski 2025-04-14 03:28:11 -04:00 committed by GitHub
parent 6d94c9f4e7
commit aadff24099
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 16 additions and 1 deletions

View File

@ -33,7 +33,7 @@ class CustomFilter < ApplicationRecord
include Expireable
include Redisable
enum :action, { warn: 0, hide: 1, blur: 2 }, suffix: :action
enum :action, { warn: 0, hide: 1, blur: 2 }, suffix: :action, validate: true
belongs_to :account
has_many :keywords, class_name: 'CustomFilterKeyword', inverse_of: :custom_filter, dependent: :destroy

View File

@ -115,6 +115,21 @@ RSpec.describe 'Filters' do
.to start_with('application/json')
end
end
context 'when the given filter_action value is invalid' do
let(:params) { { title: 'magic', filter_action: 'imaginary_value', keywords_attributes: [keyword: 'magic'] } }
it 'returns http unprocessable entity' do
subject
expect(response)
.to have_http_status(422)
expect(response.content_type)
.to start_with('application/json')
expect(response.parsed_body)
.to include(error: /Action is not included/)
end
end
end
describe 'GET /api/v2/filters/:id' do