More tests on domain transferring

This commit is contained in:
Martin Lensment 2014-09-29 12:41:15 +03:00
parent 72a37f3b08
commit d2565d646d
2 changed files with 69 additions and 3 deletions

View file

@ -12,7 +12,7 @@ feature 'Domain transfer', type: :feature do
Fabricate(:domain, registrar: zone)
end
scenario 'when registrar requests transfer on own domain', js: true do
scenario 'Registrar requests transfer on own domain', js: true do
sign_in zone_user
click_on 'Domains'
click_on 'Transfer domain'
@ -32,7 +32,7 @@ feature 'Domain transfer', type: :feature do
expect(page).to have_text('Domain already belongs to the querying registrar')
end
scenario 'when other registrar requests transfer' do
scenario 'Other registrar requests transfer with 0 wait time' do
sign_in elkdata_user
d = Domain.first
visit client_domains_path
@ -49,4 +49,70 @@ feature 'Domain transfer', type: :feature do
visit client_domains_path
expect(page).to have_link(d.name)
end
scenario 'Other registrar requests transfer with 1 wait time' do
s = Setting.find_by(code: 'transfer_wait_time')
s.value = 1
s.save
sign_in elkdata_user
d = Domain.first
visit client_domains_path
expect(page).to_not have_link(d.name)
visit new_client_domain_transfer_path
fill_in 'Domain name', with: d.name
fill_in 'Domain password', with: d.auth_info
click_on 'Request domain transfer'
expect(page).to have_text('Domain transfer requested!')
expect(page).to have_text('pending')
visit new_client_domain_transfer_path
fill_in 'Domain name', with: d.name
fill_in 'Domain password', with: d.auth_info
click_on 'Request domain transfer'
expect(page).to have_text('Domain transfer requested!')
expect(page).to have_text('pending')
visit client_domains_path
expect(page).to_not have_link(d.name)
end
scenario 'Domain owner approves request' do
d = Domain.first
d.domain_transfers.create(
status: DomainTransfer::PENDING,
transfer_requested_at: Time.zone.now,
transfer_to: elkdata,
transfer_from: zone
)
sign_in elkdata_user
visit new_client_domain_transfer_path
fill_in 'Domain name', with: d.name
fill_in 'Domain password', with: d.auth_info
click_on 'Request domain transfer'
expect(page).to have_text('Domain transfer requested!')
expect(page).to_not have_button('Approve')
sign_in zone_user
visit new_client_domain_transfer_path
fill_in 'Domain name', with: d.name
fill_in 'Domain password', with: d.auth_info
click_on 'Request domain transfer'
expect(page).to have_button('Approve')
click_on 'Approve'
expect(page).to have_text('Domain transfer approved!')
expect(page).to have_text('clientApproved')
sign_in elkdata_user
visit client_domains_path
expect(page).to have_link(d.name)
end
end

View file

@ -1,6 +1,6 @@
module Feature
def sign_in(user)
visit root_path
visit '/logout'
click_on 'ID card (gitlab)' if user.username == 'gitlab'
click_on 'ID card (zone)' if user.username == 'zone'
click_on 'ID card (elkdata)' if user.username == 'elkdata'