Update tests

#660
This commit is contained in:
Artur Beljajev 2018-01-25 12:43:15 +02:00
parent f99b8b66b0
commit 28b76a6d91
4 changed files with 118 additions and 88 deletions

View file

@ -3,42 +3,9 @@ require 'test_helper'
class ContactTest < ActiveSupport::TestCase class ContactTest < ActiveSupport::TestCase
def setup def setup
@contact = contacts(:john) @contact = contacts(:john)
@new_registrar = registrars(:goodnames)
end end
def test_validates def test_validates
assert @contact.valid? assert @contact.valid?
end end
def test_transfer_keeps_original_contact_untouched
original_hash = @contact.to_json
new_contact = @contact.transfer(@new_registrar)
refute_equal original_hash, new_contact.to_json
end
def test_transfer_creates_new_contact
assert_difference 'Contact.count' do
@contact.transfer(@new_registrar)
end
end
def test_transfer_changes_registrar
new_contact = @contact.transfer(@new_registrar)
assert_equal @new_registrar, new_contact.registrar
end
def test_transfer_links_to_original
new_contact = @contact.transfer(@new_registrar)
assert_equal @contact, new_contact.original
end
def test_transfer_regenerates_new_code
new_contact = @contact.transfer(@new_registrar)
refute_equal @contact.code, new_contact.code
end
def test_transfer_regenerates_auth_info
new_contact = @contact.transfer(@new_registrar)
refute_equal @contact.auth_info, new_contact.auth_info
end
end end

View file

@ -0,0 +1,56 @@
require 'test_helper'
class ContactTransferTest < ActiveSupport::TestCase
def setup
@contact = contacts(:john)
@new_registrar = registrars(:goodnames)
end
def test_generates_unique_auth_info_if_contact_is_new
contact = Contact.new
another_contact = Contact.new
refute_empty contact.auth_info
refute_empty another_contact.auth_info
refute_equal contact.auth_info, another_contact.auth_info
end
def test_does_not_regenerate_auth_info_if_contact_is_persisted
original_auth_info = @contact.auth_info
@contact.save!
@contact.reload
assert_equal original_auth_info, @contact.auth_info
end
def test_keeps_original_contact_untouched
original_hash = @contact.to_json
new_contact = @contact.transfer(@new_registrar)
refute_equal original_hash, new_contact.to_json
end
def test_creates_new_contact
assert_difference 'Contact.count' do
@contact.transfer(@new_registrar)
end
end
def test_changes_registrar
new_contact = @contact.transfer(@new_registrar)
assert_equal @new_registrar, new_contact.registrar
end
def test_links_to_original
new_contact = @contact.transfer(@new_registrar)
assert_equal @contact, new_contact.original
end
def test_regenerates_new_code
new_contact = @contact.transfer(@new_registrar)
refute_equal @contact.code, new_contact.code
end
def test_regenerates_auth_info
new_contact = @contact.transfer(@new_registrar)
refute_equal @contact.auth_info, new_contact.auth_info
end
end

View file

@ -8,59 +8,4 @@ class DomainTest < ActiveSupport::TestCase
def test_validates def test_validates
assert @domain.valid? assert @domain.valid?
end end
def test_rejects_absent_transfer_code
@domain.transfer_code = nil
@domain.validate
assert @domain.invalid?
end
def test_generates_random_transfer_code_if_new
domain = Domain.new
another_domain = Domain.new
refute_empty domain.transfer_code
refute_empty another_domain.transfer_code
refute_equal domain.transfer_code, another_domain.transfer_code
end
def test_does_not_regenerate_transfer_code_if_persisted
original_transfer_code = @domain.transfer_code
@domain.save!
@domain.reload
assert_equal original_transfer_code, @domain.transfer_code
end
def test_changes_registrar
old_transfer_code = @domain.transfer_code
new_registrar = registrars(:goodnames)
@domain.transfer(new_registrar)
assert_equal new_registrar, @domain.registrar
refute_same @domain.transfer_code, old_transfer_code
end
def test_regenerates_transfer_code
old_transfer_code = @domain.transfer_code
new_registrar = registrars(:goodnames)
@domain.transfer(new_registrar)
refute_same @domain.transfer_code, old_transfer_code
end
def test_transfer_creates_domain_transfer_object
new_registrar = registrars(:goodnames)
assert_difference 'DomainTransfer.count' do
@domain.transfer(new_registrar)
end
end
def test_transfer_copies_contacts
new_registrar = registrars(:goodnames)
assert_difference 'Contact.count', 2 do
@domain.transfer(new_registrar)
end
end
end end

View file

@ -0,0 +1,62 @@
require 'test_helper'
class DomainTest < ActiveSupport::TestCase
def setup
@domain = domains(:shop)
end
def test_rejects_absent_transfer_code
@domain.transfer_code = nil
@domain.validate
assert @domain.invalid?
end
def test_generates_random_transfer_code_if_domain_is_new
domain = Domain.new
another_domain = Domain.new
refute_empty domain.transfer_code
refute_empty another_domain.transfer_code
refute_equal domain.transfer_code, another_domain.transfer_code
end
def test_does_not_regenerate_transfer_code_if_domain_is_persisted
original_transfer_code = @domain.transfer_code
@domain.save!
@domain.reload
assert_equal original_transfer_code, @domain.transfer_code
end
def test_changes_registrar
old_transfer_code = @domain.transfer_code
new_registrar = registrars(:goodnames)
@domain.transfer(new_registrar)
assert_equal new_registrar, @domain.registrar
refute_same @domain.transfer_code, old_transfer_code
end
def test_regenerates_transfer_code
old_transfer_code = @domain.transfer_code
new_registrar = registrars(:goodnames)
@domain.transfer(new_registrar)
refute_same @domain.transfer_code, old_transfer_code
end
def test_creates_domain_transfer
new_registrar = registrars(:goodnames)
assert_difference 'DomainTransfer.count' do
@domain.transfer(new_registrar)
end
end
def test_oopies_contacts
new_registrar = registrars(:goodnames)
assert_difference 'Contact.count', 2 do
@domain.transfer(new_registrar)
end
end
end