mirror of
https://github.com/internetee/registry.git
synced 2025-07-23 19:20:37 +02:00
Merge remote-tracking branch 'origin/master' into 1651-domain-transfer-fails
This commit is contained in:
commit
c4a6a35743
10 changed files with 155 additions and 14 deletions
BIN
test/fixtures/files/legaldoc.pdf
vendored
Normal file
BIN
test/fixtures/files/legaldoc.pdf
vendored
Normal file
Binary file not shown.
|
@ -14,6 +14,15 @@ class DirectoInvoiceForwardJobTest < ActiveSupport::TestCase
|
|||
Setting.directo_monthly_number_last = 309901
|
||||
end
|
||||
|
||||
def test_directo_json_sends_customer_as_hash
|
||||
@invoice.update!(buyer_country_code: @user.address_country_code)
|
||||
|
||||
json_output = @invoice.as_directo_json
|
||||
assert json_output['customer'].is_a? Hash
|
||||
assert_equal @user.accounting_customer_code, json_output['customer']['code']
|
||||
assert_equal @user.address_country_code, json_output['customer']['destination']
|
||||
end
|
||||
|
||||
def test_xml_is_include_transaction_date
|
||||
@invoice.update(total: @invoice.account_activity.bank_transaction.sum)
|
||||
@invoice.account_activity.bank_transaction.update(paid_at: Time.zone.now)
|
||||
|
|
|
@ -1,17 +1,11 @@
|
|||
require "test_helper"
|
||||
|
||||
class DomainDeleteConfirmJobTest < ActiveSupport::TestCase
|
||||
def setup
|
||||
super
|
||||
|
||||
setup do
|
||||
@legal_doc_path = 'test/fixtures/files/legaldoc.pdf'
|
||||
@domain = domains(:shop)
|
||||
@new_registrant = contacts(:william)
|
||||
@user = users(:api_bestnames)
|
||||
|
||||
@domain.update!(pending_json: { new_registrant_id: @new_registrant.id,
|
||||
new_registrant_name: @new_registrant.name,
|
||||
new_registrant_email: @new_registrant.email,
|
||||
current_user_id: @user.id })
|
||||
end
|
||||
|
||||
def teardown
|
||||
|
@ -19,6 +13,11 @@ class DomainDeleteConfirmJobTest < ActiveSupport::TestCase
|
|||
end
|
||||
|
||||
def test_rejected_registrant_verification_notifies_registrar
|
||||
@domain.update!(pending_json: { new_registrant_id: @new_registrant.id,
|
||||
new_registrant_name: @new_registrant.name,
|
||||
new_registrant_email: @new_registrant.email,
|
||||
current_user_id: @user.id })
|
||||
|
||||
DomainDeleteConfirmJob.enqueue(@domain.id, RegistrantVerification::REJECTED)
|
||||
|
||||
last_registrar_notification = @domain.registrar.notifications.last
|
||||
|
@ -27,10 +26,57 @@ class DomainDeleteConfirmJobTest < ActiveSupport::TestCase
|
|||
end
|
||||
|
||||
def test_accepted_registrant_verification_notifies_registrar
|
||||
@domain.update!(pending_json: { new_registrant_id: @new_registrant.id,
|
||||
new_registrant_name: @new_registrant.name,
|
||||
new_registrant_email: @new_registrant.email,
|
||||
current_user_id: @user.id })
|
||||
|
||||
DomainDeleteConfirmJob.enqueue(@domain.id, RegistrantVerification::CONFIRMED)
|
||||
|
||||
last_registrar_notification = @domain.registrar.notifications.last
|
||||
assert_equal(last_registrar_notification.attached_obj_id, @domain.id)
|
||||
assert_equal(last_registrar_notification.text, 'Registrant confirmed domain deletion: shop.test')
|
||||
end
|
||||
|
||||
def test_marks_domain_as_pending_delete_after_acceptance
|
||||
epp_xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<epp>\n <command>\n <delete>\n" \
|
||||
" <delete verified=\"no\">\n <name>#{@domain.name}</name>\n </delete>\n </delete>\n <extension>\n" \
|
||||
" <extdata>\n <legalDocument type=\"pdf\">#{@legal_doc_path}</legalDocument>\n" \
|
||||
" </extdata>\n </extension>\n <clTRID>20alla-1594212240</clTRID>\n </command>\n</epp>\n"
|
||||
|
||||
@domain.registrant_verification_asked!(epp_xml, @user.id)
|
||||
@domain.pending_delete!
|
||||
@domain.reload
|
||||
|
||||
assert @domain.registrant_delete_confirmable?(@domain.registrant_verification_token)
|
||||
assert_equal @user.id, @domain.pending_json['current_user_id']
|
||||
|
||||
DomainDeleteConfirmJob.enqueue(@domain.id, RegistrantVerification::CONFIRMED)
|
||||
@domain.reload
|
||||
|
||||
assert @domain.statuses.include? DomainStatus::PENDING_DELETE
|
||||
assert @domain.statuses.include? DomainStatus::SERVER_HOLD
|
||||
assert_not @domain.statuses.include? DomainStatus::PENDING_DELETE_CONFIRMATION
|
||||
end
|
||||
|
||||
def test_clears_pending_flags_after_delete_denial
|
||||
epp_xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<epp>\n <command>\n <delete>\n" \
|
||||
" <delete verified=\"no\">\n <name>#{@domain.name}</name>\n </delete>\n </delete>\n <extension>\n" \
|
||||
" <extdata>\n <legalDocument type=\"pdf\">#{@legal_doc_path}</legalDocument>\n" \
|
||||
" </extdata>\n </extension>\n <clTRID>20alla-1594212240</clTRID>\n </command>\n</epp>\n"
|
||||
|
||||
@domain.registrant_verification_asked!(epp_xml, @user.id)
|
||||
@domain.pending_delete!
|
||||
@domain.reload
|
||||
|
||||
assert @domain.registrant_delete_confirmable?(@domain.registrant_verification_token)
|
||||
assert_equal @user.id, @domain.pending_json['current_user_id']
|
||||
|
||||
DomainDeleteConfirmJob.enqueue(@domain.id, RegistrantVerification::REJECTED)
|
||||
@domain.reload
|
||||
|
||||
assert_equal ['ok'], @domain.statuses
|
||||
assert_not @domain.statuses.include? DomainStatus::PENDING_DELETE_CONFIRMATION
|
||||
assert_not @domain.statuses.include? DomainStatus::PENDING_DELETE
|
||||
end
|
||||
end
|
||||
|
|
|
@ -7,6 +7,7 @@ class DomainUpdateConfirmJobTest < ActiveSupport::TestCase
|
|||
@domain = domains(:shop)
|
||||
@new_registrant = contacts(:william)
|
||||
@user = users(:api_bestnames)
|
||||
@legal_doc_path = 'test/fixtures/files/legaldoc.pdf'
|
||||
|
||||
@domain.update!(pending_json: { new_registrant_id: @new_registrant.id,
|
||||
new_registrant_name: @new_registrant.name,
|
||||
|
@ -33,4 +34,34 @@ class DomainUpdateConfirmJobTest < ActiveSupport::TestCase
|
|||
assert_equal(last_registrar_notification.attached_obj_id, @domain.id)
|
||||
assert_equal(last_registrar_notification.text, 'Registrant confirmed domain update: shop.test')
|
||||
end
|
||||
|
||||
def test_changes_domain_registrant_after_approval
|
||||
epp_xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<epp>\n <command>\n <update>\n <update>\n <name>#{@domain.name}</name>\n" \
|
||||
" <chg>\n <registrant>#{@new_registrant.code}</registrant>\n </chg>\n </update>\n </update>\n <extension>\n <update/>\n" \
|
||||
" <extdata>\n <legalDocument type=\"pdf\">#{@legal_doc_path}</legalDocument>\n </extdata>\n" \
|
||||
" </extension>\n <clTRID>20alla-1594199756</clTRID>\n </command>\n</epp>\n"
|
||||
@domain.pending_json['frame'] = epp_xml
|
||||
@domain.update(pending_json: @domain.pending_json)
|
||||
|
||||
@domain.reload
|
||||
DomainUpdateConfirmJob.enqueue(@domain.id, RegistrantVerification::CONFIRMED)
|
||||
@domain.reload
|
||||
|
||||
assert_equal @domain.registrant.code, @new_registrant.code
|
||||
end
|
||||
|
||||
def test_clears_pending_update_after_denial
|
||||
epp_xml = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<epp>\n <command>\n <update>\n <update>\n <name>#{@domain.name}</name>\n" \
|
||||
" <chg>\n <registrant>#{@new_registrant.code}</registrant>\n </chg>\n </update>\n </update>\n <extension>\n <update/>\n" \
|
||||
" <extdata>\n <legalDocument type=\"pdf\">#{@legal_doc_path}</legalDocument>\n </extdata>\n" \
|
||||
" </extension>\n <clTRID>20alla-1594199756</clTRID>\n </command>\n</epp>\n"
|
||||
@domain.pending_json['frame'] = epp_xml
|
||||
@domain.update(pending_json: @domain.pending_json)
|
||||
|
||||
DomainUpdateConfirmJob.enqueue(@domain.id, RegistrantVerification::REJECTED)
|
||||
@domain.reload
|
||||
|
||||
assert_not @domain.statuses.include? DomainStatus::PENDING_DELETE_CONFIRMATION
|
||||
assert_not @domain.statuses.include? DomainStatus::PENDING_DELETE
|
||||
end
|
||||
end
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
require 'application_system_test_case'
|
||||
|
||||
class DomainDeleteConfirmsTest < ApplicationSystemTestCase
|
||||
setup do
|
||||
@user = users(:registrant)
|
||||
sign_in @user
|
||||
|
||||
@domain = domains(:shop)
|
||||
@domain.registrant_verification_asked!('<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<epp></epp>', @user.id)
|
||||
@domain.pending_delete!
|
||||
end
|
||||
|
||||
def test_enqueues_approve_job_after_verification
|
||||
visit registrant_domain_delete_confirm_url(@domain.id, token: @domain.registrant_verification_token)
|
||||
|
||||
click_on 'Confirm domain delete'
|
||||
assert_text 'Domain registrant change has successfully received.'
|
||||
|
||||
@domain.reload
|
||||
assert_includes @domain.statuses, 'serverHold'
|
||||
end
|
||||
|
||||
def test_enqueues_reject_job_after_verification
|
||||
visit registrant_domain_delete_confirm_url(@domain.id, token: @domain.registrant_verification_token)
|
||||
|
||||
click_on 'Reject domain delete'
|
||||
assert_text 'Domain registrant change has been rejected successfully.'
|
||||
|
||||
@domain.reload
|
||||
assert_equal ['ok'], @domain.statuses
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue