Add some tests for domain transfer

This commit is contained in:
Martin Lensment 2014-09-29 11:54:24 +03:00
parent b48b91878d
commit 72a37f3b08
14 changed files with 120 additions and 39 deletions

View file

@ -14,6 +14,7 @@ class Ability
elsif user.persisted?
can :manage, Domain, registrar_id: user.registrar.id
can :read, DomainTransfer, transfer_to_id: user.registrar.id
can :read, DomainTransfer, transfer_from_id: user.registrar.id
can :approve_as_client, DomainTransfer, transfer_from_id: user.registrar.id, status: DomainTransfer::PENDING
end
# Define abilities for the passed in user here. For example:

View file

@ -11,6 +11,10 @@ class DomainTransfer < ActiveRecord::Base
SERVER_APPROVED = 'serverApproved'
SERVER_CANCELLED = 'serverCancelled'
def approved?
status == CLIENT_APPROVED || status == SERVER_APPROVED
end
def transfer_confirm_time
wait_time = SettingGroup.domain_general.setting(:transfer_wait_time).value.to_i
transfer_requested_at + wait_time.hours
@ -27,4 +31,16 @@ class DomainTransfer < ActiveRecord::Base
domain.save(validate: false)
end
end
def approve_as_server
transaction do
self.status = DomainTransfer::SERVER_APPROVED
self.transferred_at = Time.zone.now
save
domain.generate_auth_info
domain.registrar = transfer_to
domain.save(validate: false)
end
end
end