Test changing publishable field on registrant API

This commit is contained in:
Thiago Youssef 2022-07-19 08:51:19 -03:00 committed by olegphenomenon
parent 5c129b24ef
commit 4286a6bab7
3 changed files with 17 additions and 2 deletions

View file

@ -72,7 +72,7 @@ module Api
contact.disclosed_attributes = disclosed_attributes
end
contact.publishable = reparsed_request_json[:publishable] if reparsed_request_json[:publishable]
contact.publishable = reparsed_request_json[:publishable] if reparsed_request_json[:publishable].present?
logger.debug "Setting.address_processing is set to #{Setting.address_processing}"

View file

@ -64,7 +64,7 @@ class Contact < ApplicationRecord
validate :validate_html
validate :validate_country_code, if: -> { self.class.address_processing? }
validates_inclusion_of :publishable, in: [false], unless: -> { registrant? }
validates :publishable, inclusion: { in: [true, false] }
after_initialize do
self.status_notes = {} if status_notes.nil?

View file

@ -229,6 +229,21 @@ class RegistrantApiV1ContactUpdateTest < ActionDispatch::IntegrationTest
assert_equal %w[phone], @contact.disclosed_attributes
end
def test_publishable_change_when_present
@contact = contacts(:acme_ltd)
@contact.update!(publishable: false)
patch api_v1_registrant_contact_path(@contact.uuid),
params: { disclosed_attributes: %w[], publishable: true },
as: :json,
headers: { 'HTTP_AUTHORIZATION' => auth_token }
@contact.reload
assert_response :ok
assert @contact.publishable
end
def test_return_contact_details
patch api_v1_registrant_contact_path(@contact.uuid), params: { name: 'new name' },
as: :json,