mirror of
https://github.com/internetee/registry.git
synced 2025-07-20 09:46:09 +02:00
Fix condition on disclosed attrs presence
This commit is contained in:
parent
b5d175798e
commit
40579a8488
2 changed files with 20 additions and 5 deletions
|
@ -47,11 +47,11 @@ module Api
|
||||||
reparsed_request_json = ActiveSupport::JSON.decode(request.body.string)
|
reparsed_request_json = ActiveSupport::JSON.decode(request.body.string)
|
||||||
.with_indifferent_access
|
.with_indifferent_access
|
||||||
logger.debug 'Reparsed request is following'
|
logger.debug 'Reparsed request is following'
|
||||||
logger.debug "#{reparsed_request_json}"
|
logger.debug reparsed_request_json.to_s
|
||||||
disclosed_attributes = reparsed_request_json[:disclosed_attributes]
|
disclosed_attributes = reparsed_request_json[:disclosed_attributes]
|
||||||
|
|
||||||
if disclosed_attributes
|
if disclosed_attributes
|
||||||
if contact.org?
|
if disclosed_attributes.present? && contact.org?
|
||||||
error_msg = "Legal person's data is visible by default and cannot be concealed." \
|
error_msg = "Legal person's data is visible by default and cannot be concealed." \
|
||||||
' Please remove this parameter.'
|
' Please remove this parameter.'
|
||||||
render json: { errors: [{ disclosed_attributes: [error_msg] }] }, status: :bad_request
|
render json: { errors: [{ disclosed_attributes: [error_msg] }] }, status: :bad_request
|
||||||
|
|
|
@ -9,7 +9,7 @@ class RegistrantApiV1ContactUpdateTest < ActionDispatch::IntegrationTest
|
||||||
@original_address_processing = Setting.address_processing
|
@original_address_processing = Setting.address_processing
|
||||||
@original_fax_enabled_setting = ENV['fax_enabled']
|
@original_fax_enabled_setting = ENV['fax_enabled']
|
||||||
@user = users(:registrant)
|
@user = users(:registrant)
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
teardown do
|
teardown do
|
||||||
|
@ -160,6 +160,21 @@ class RegistrantApiV1ContactUpdateTest < ActionDispatch::IntegrationTest
|
||||||
assert_equal %w[name], @contact.disclosed_attributes
|
assert_equal %w[name], @contact.disclosed_attributes
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_updates_org_person_data
|
||||||
|
name = 'SomeWeirdName'
|
||||||
|
@contact.update!(ident_type: Contact::ORG,
|
||||||
|
disclosed_attributes: %w[])
|
||||||
|
|
||||||
|
patch api_v1_registrant_contact_path(@contact.uuid),
|
||||||
|
params: { disclosed_attributes: %w[], name: name },
|
||||||
|
as: :json,
|
||||||
|
headers: { 'HTTP_AUTHORIZATION' => auth_token }
|
||||||
|
@contact.reload
|
||||||
|
|
||||||
|
assert_response :ok
|
||||||
|
assert_equal name, @contact.name
|
||||||
|
end
|
||||||
|
|
||||||
def test_conceal_private_persons_data
|
def test_conceal_private_persons_data
|
||||||
@contact.update!(ident_type: Contact::PRIV, disclosed_attributes: %w[name])
|
@contact.update!(ident_type: Contact::PRIV, disclosed_attributes: %w[name])
|
||||||
|
|
||||||
|
@ -244,9 +259,9 @@ class RegistrantApiV1ContactUpdateTest < ActionDispatch::IntegrationTest
|
||||||
headers: { 'HTTP_AUTHORIZATION' => auth_token }
|
headers: { 'HTTP_AUTHORIZATION' => auth_token }
|
||||||
|
|
||||||
assert_response :bad_request
|
assert_response :bad_request
|
||||||
|
|
||||||
err_msg = "Legal person's data is visible by default and cannot be concealed. Please remove this parameter."
|
err_msg = "Legal person's data is visible by default and cannot be concealed. Please remove this parameter."
|
||||||
|
|
||||||
response_json = JSON.parse(response.body, symbolize_names: true)
|
response_json = JSON.parse(response.body, symbolize_names: true)
|
||||||
response_msg = response_json[:errors][0][:disclosed_attributes][0]
|
response_msg = response_json[:errors][0][:disclosed_attributes][0]
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue