mirror of
https://github.com/internetee/registry.git
synced 2025-06-06 12:47:29 +02:00
REPP:: Contact create/update legaldoc test
This commit is contained in:
parent
33f6da53c1
commit
ddc26b81b1
3 changed files with 52 additions and 6 deletions
|
@ -28,7 +28,7 @@ module Repp
|
|||
## POST /repp/v1/contacts
|
||||
def create
|
||||
@contact = Epp::Contact.new(contact_params_with_address, current_user.registrar, epp: false)
|
||||
action = Actions::ContactCreate.new(@contact, params[:legal_documents],
|
||||
action = Actions::ContactCreate.new(@contact, params[:legal_document],
|
||||
contact_ident_params)
|
||||
|
||||
unless action.call
|
||||
|
@ -116,11 +116,6 @@ module Repp
|
|||
params.require(:contact).permit(addr: %i[country_code city street zip])
|
||||
end
|
||||
end
|
||||
|
||||
def legal_document_params
|
||||
params.require(:legal_document).require(%i[body type])
|
||||
params.require(:legal_document).permit(:body, :type)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -124,4 +124,33 @@ class ReppV1ContactsCreateTest < ActionDispatch::IntegrationTest
|
|||
assert_equal 2005, json[:code]
|
||||
assert json[:message].include? 'Ident code does not conform to national identification number format'
|
||||
end
|
||||
|
||||
def test_attaches_legaldoc_if_present
|
||||
request_body = {
|
||||
"contact": {
|
||||
"name": "Donald Trump",
|
||||
"phone": "+372.51111112",
|
||||
"email": "donald@trumptower.com",
|
||||
"ident": {
|
||||
"ident_type": "priv",
|
||||
"ident_country_code": "EE",
|
||||
"ident": "39708290069"
|
||||
},
|
||||
},
|
||||
"legal_document": {
|
||||
"type": "pdf",
|
||||
"body": "#{'test' * 2000}"
|
||||
}
|
||||
}
|
||||
|
||||
post '/repp/v1/contacts', headers: @auth_headers, params: request_body
|
||||
json = JSON.parse(response.body, symbolize_names: true)
|
||||
|
||||
assert_response :ok
|
||||
assert_equal 1000, json[:code]
|
||||
assert_equal 'Command completed successfully', json[:message]
|
||||
|
||||
contact = Contact.find_by(code: json[:data][:contact][:id])
|
||||
assert contact.legal_documents.any?
|
||||
end
|
||||
end
|
||||
|
|
|
@ -79,4 +79,26 @@ class ReppV1ContactsUpdateTest < ActionDispatch::IntegrationTest
|
|||
assert_equal 2308, json[:code]
|
||||
assert json[:message].include? 'Ident update is not allowed. Consider creating new contact object'
|
||||
end
|
||||
|
||||
def test_attaches_legaldoc_if_present
|
||||
request_body = {
|
||||
"contact": {
|
||||
"email": "donaldtrump@yandex.ru"
|
||||
},
|
||||
"legal_document": {
|
||||
"type": "pdf",
|
||||
"body": "#{'test' * 2000}"
|
||||
}
|
||||
}
|
||||
|
||||
put "/repp/v1/contacts/#{@contact.code}", headers: @auth_headers, params: request_body
|
||||
json = JSON.parse(response.body, symbolize_names: true)
|
||||
|
||||
assert_response :ok
|
||||
assert_equal 1000, json[:code]
|
||||
assert_equal 'Command completed successfully', json[:message]
|
||||
|
||||
@contact.reload
|
||||
assert @contact.legal_documents.any?
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue