diff --git a/test/models/contact_test.rb b/test/models/contact_test.rb index 017a50c0b..aad044592 100644 --- a/test/models/contact_test.rb +++ b/test/models/contact_test.rb @@ -3,42 +3,9 @@ require 'test_helper' class ContactTest < ActiveSupport::TestCase def setup @contact = contacts(:john) - @new_registrar = registrars(:goodnames) end def test_validates assert @contact.valid? 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 diff --git a/test/models/contact_transfer_test.rb b/test/models/contact_transfer_test.rb new file mode 100644 index 000000000..814b008da --- /dev/null +++ b/test/models/contact_transfer_test.rb @@ -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 diff --git a/test/models/domain_test.rb b/test/models/domain_test.rb index f3baa2e4a..a2c3fae55 100644 --- a/test/models/domain_test.rb +++ b/test/models/domain_test.rb @@ -8,59 +8,4 @@ class DomainTest < ActiveSupport::TestCase def test_validates assert @domain.valid? 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 diff --git a/test/models/domain_transfer_test.rb b/test/models/domain_transfer_test.rb new file mode 100644 index 000000000..b49be5aeb --- /dev/null +++ b/test/models/domain_transfer_test.rb @@ -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