From 2da578a437e5d1d1a58afc44ee279b355528d002 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Thu, 16 Nov 2017 10:18:53 +0200 Subject: [PATCH] Migrate fabricators to factory bot factories (#626) * Remove factory_girl include from dev rake task No longer needed after 92b125b4a7fd1b4cc7535dd022d58b58a75ac2cf * Add missing factories * Use FactoryBot factories instead of fabricators * Remove all fabricators * Remove unused method * Remove fabrication gem * Rename FactoryGirl to FactoryBot https://robots.thoughtbot.com/factory_bot --- Gemfile | 3 +- Gemfile.lock | 10 +- app/models/contact.rb | 4 - lib/tasks/dev.rake | 3 +- spec/api/repp/contact_v1_spec.rb | 6 +- spec/fabricators/account_fabricator.rb | 6 - spec/fabricators/admin_user_fabricator.rb | 29 ---- spec/fabricators/api_user_fabricator.rb | 14 -- spec/fabricators/bank_statement_fabricator.rb | 6 - .../bank_transaction_fabricator.rb | 6 - spec/fabricators/blocked_domain_fabricator.rb | 3 - spec/fabricators/certificate_fabricator.rb | 36 ----- spec/fabricators/contact_fabricator.rb | 18 --- spec/fabricators/dnskey_fabricator.rb | 13 -- spec/fabricators/domain_contact_fabricator.rb | 12 -- spec/fabricators/domain_fabricator.rb | 16 -- .../fabricators/domain_transfer_fabricator.rb | 5 - spec/fabricators/epp_domain_fabricator.rb | 1 - spec/fabricators/epp_session_fabricator.rb | 4 - spec/fabricators/invoice_fabricator.rb | 13 -- spec/fabricators/invoice_item_fabricator.rb | 6 - spec/fabricators/keyrelay_fabricator.rb | 10 -- spec/fabricators/message_fabricator.rb | 3 - spec/fabricators/nameserver_fabricator.rb | 4 - spec/fabricators/registrant_fabricator.rb | 18 --- .../registrant_verification_fabricator.rb | 7 - spec/fabricators/registrar_fabricator.rb | 54 ------- .../fabricators/reserved_domain_fabricator.rb | 3 - spec/fabricators/zone_fabricator.rb | 16 -- spec/factories/account.rb | 2 +- spec/factories/account_activity.rb | 2 +- spec/factories/admin_domain_contact.rb | 2 +- spec/factories/admin_user.rb | 2 +- spec/factories/api_user.rb | 2 +- spec/factories/bank_statement.rb | 11 ++ spec/factories/bank_transaction.rb | 8 + spec/factories/billing/price.rb | 2 +- spec/factories/contact.rb | 2 +- spec/factories/dns/zone.rb | 2 +- spec/factories/dnskey.rb | 3 +- spec/factories/domain.rb | 6 +- spec/factories/domain_contact.rb | 2 +- spec/factories/domain_transfer.rb | 7 + spec/factories/epp_session.rb | 2 +- spec/factories/invoice.rb | 18 +++ spec/factories/invoice_item.rb | 8 + spec/factories/keyrelay.rb | 12 ++ spec/factories/message.rb | 5 + spec/factories/nameserver.rb | 2 +- spec/factories/registrant.rb | 2 +- spec/factories/registrant_user.rb | 2 +- spec/factories/registrant_verification.rb | 9 ++ spec/factories/registrar.rb | 2 +- spec/factories/reserved_domain.rb | 5 + spec/factories/tech_domain_contact.rb | 2 +- spec/factories/white_ip.rb | 2 +- spec/factory_lint_spec.rb | 6 +- .../registrar/sign_in/mobile_id_spec.rb | 2 +- spec/models/admin_user_spec.rb | 2 +- spec/models/api_user_spec.rb | 4 +- spec/models/bank_statement_spec.rb | 60 ++----- spec/models/bank_transaction_spec.rb | 14 +- spec/models/concerns/domain/expirable_spec.rb | 8 +- .../concerns/domain/force_delete_spec.rb | 8 +- spec/models/contact_spec.rb | 54 +++---- spec/models/dnskey_spec.rb | 20 ++- spec/models/domain_contact_spec.rb | 24 +-- spec/models/domain_cron_spec.rb | 8 +- spec/models/domain_spec.rb | 149 +++++++++--------- spec/models/domain_transfer_spec.rb | 6 +- spec/models/epp_contact_spec.rb | 4 +- spec/models/epp_session.rb | 2 +- spec/models/invoice_spec.rb | 12 +- spec/models/keyrelay_spec.rb | 10 +- spec/models/legal_document_spec.rb | 14 +- spec/models/message_spec.rb | 4 +- spec/models/nameserver_spec.rb | 32 ++-- spec/models/registrant_verification_spec.rb | 6 +- spec/models/registrar_spec.rb | 28 ++-- spec/models/whois_record_spec.rb | 12 +- spec/rails_helper.rb | 2 +- spec/requests/epp/contact/info_spec.rb | 2 +- spec/requests/epp/contact/update_spec.rb | 2 +- spec/support/factory_bot.rb | 3 + spec/support/factory_girl.rb | 3 - spec/support/features/session_helpers.rb | 4 +- spec/support/requests/session_helpers.rb | 6 +- spec/support/settings.rb | 2 +- 88 files changed, 356 insertions(+), 610 deletions(-) delete mode 100644 spec/fabricators/account_fabricator.rb delete mode 100644 spec/fabricators/admin_user_fabricator.rb delete mode 100644 spec/fabricators/api_user_fabricator.rb delete mode 100644 spec/fabricators/bank_statement_fabricator.rb delete mode 100644 spec/fabricators/bank_transaction_fabricator.rb delete mode 100644 spec/fabricators/blocked_domain_fabricator.rb delete mode 100644 spec/fabricators/certificate_fabricator.rb delete mode 100644 spec/fabricators/contact_fabricator.rb delete mode 100644 spec/fabricators/dnskey_fabricator.rb delete mode 100644 spec/fabricators/domain_contact_fabricator.rb delete mode 100644 spec/fabricators/domain_fabricator.rb delete mode 100644 spec/fabricators/domain_transfer_fabricator.rb delete mode 100644 spec/fabricators/epp_domain_fabricator.rb delete mode 100644 spec/fabricators/epp_session_fabricator.rb delete mode 100644 spec/fabricators/invoice_fabricator.rb delete mode 100644 spec/fabricators/invoice_item_fabricator.rb delete mode 100644 spec/fabricators/keyrelay_fabricator.rb delete mode 100644 spec/fabricators/message_fabricator.rb delete mode 100644 spec/fabricators/nameserver_fabricator.rb delete mode 100644 spec/fabricators/registrant_fabricator.rb delete mode 100644 spec/fabricators/registrant_verification_fabricator.rb delete mode 100644 spec/fabricators/registrar_fabricator.rb delete mode 100644 spec/fabricators/reserved_domain_fabricator.rb delete mode 100644 spec/fabricators/zone_fabricator.rb create mode 100644 spec/factories/bank_statement.rb create mode 100644 spec/factories/bank_transaction.rb create mode 100644 spec/factories/domain_transfer.rb create mode 100644 spec/factories/invoice.rb create mode 100644 spec/factories/invoice_item.rb create mode 100644 spec/factories/keyrelay.rb create mode 100644 spec/factories/message.rb create mode 100644 spec/factories/registrant_verification.rb create mode 100644 spec/factories/reserved_domain.rb create mode 100644 spec/support/factory_bot.rb delete mode 100644 spec/support/factory_girl.rb diff --git a/Gemfile b/Gemfile index c5aa5dc82..fe8498495 100644 --- a/Gemfile +++ b/Gemfile @@ -117,10 +117,9 @@ group :development do end group :development, :test do - gem 'factory_girl_rails' + gem 'factory_bot_rails' gem 'capybara' gem 'rspec-rails', '~> 3.6' - gem 'fabrication', '2.13.2' # Replacement for fixtures gem 'poltergeist' # debug diff --git a/Gemfile.lock b/Gemfile.lock index 523ca1585..a41ece538 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -185,11 +185,10 @@ GEM equalizer (0.0.11) erubis (2.7.0) execjs (2.7.0) - fabrication (2.13.2) - factory_girl (4.8.0) + factory_bot (4.8.2) activesupport (>= 3.0.0) - factory_girl_rails (4.8.0) - factory_girl (~> 4.8.0) + factory_bot_rails (4.8.2) + factory_bot (~> 4.8.2) railties (>= 3.0.0) figaro (1.1.1) thor (~> 0.14) @@ -506,8 +505,7 @@ DEPENDENCIES digidoc_client! epp (= 1.5.0)! epp-xml (= 1.1.0)! - fabrication (= 2.13.2) - factory_girl_rails + factory_bot_rails figaro (= 1.1.1) grape (= 0.12.0) haml-rails (= 0.9.0) diff --git a/app/models/contact.rb b/app/models/contact.rb index f04a16032..61a82ae0a 100644 --- a/app/models/contact.rb +++ b/app/models/contact.rb @@ -319,10 +319,6 @@ class Contact < ActiveRecord::Base self.auth_info = SecureRandom.hex(11) end - def disable_generate_auth_info! # needed for testing - @generate_auth_info_disabled = true - end - # def auth_info=(pw) # self[:auth_info] = pw if new_record? # end diff --git a/lib/tasks/dev.rake b/lib/tasks/dev.rake index 9b8301b89..c624b3c95 100644 --- a/lib/tasks/dev.rake +++ b/lib/tasks/dev.rake @@ -5,8 +5,7 @@ namespace :dev do task :prime, [:random] => :environment do |t, args| abort 'Production environment is not supported' if Rails.env.production? - require 'factory_girl' - include FactoryGirl::Syntax::Methods + include FactoryBot::Syntax::Methods PaperTrail.enabled = false Domain.paper_trail_on! diff --git a/spec/api/repp/contact_v1_spec.rb b/spec/api/repp/contact_v1_spec.rb index 455b7bd91..716eb40cc 100644 --- a/spec/api/repp/contact_v1_spec.rb +++ b/spec/api/repp/contact_v1_spec.rb @@ -1,8 +1,8 @@ require 'rails_helper' RSpec.describe Repp::ContactV1, db: true do - let(:user) { FactoryGirl.create(:api_user, registrar: registrar) } - let(:registrar) { FactoryGirl.create(:registrar) } + let(:user) { create(:api_user, registrar: registrar) } + let(:registrar) { create(:registrar) } describe '/contacts' do let(:returned_attributes) { HashWithIndifferentAccess.new(JSON.parse(response.body)['contacts'].first).keys } @@ -13,7 +13,7 @@ RSpec.describe Repp::ContactV1, db: true do allow(endpoint).to receive(:current_user).and_return(user) end - registrar.contacts << FactoryGirl.create(:contact) + registrar.contacts << create(:contact) end it 'responds with success' do diff --git a/spec/fabricators/account_fabricator.rb b/spec/fabricators/account_fabricator.rb deleted file mode 100644 index 683d98739..000000000 --- a/spec/fabricators/account_fabricator.rb +++ /dev/null @@ -1,6 +0,0 @@ -Fabricator(:account) do - account_type { Account::CASH } - balance 0.0 - currency 'EUR' - registrar -end diff --git a/spec/fabricators/admin_user_fabricator.rb b/spec/fabricators/admin_user_fabricator.rb deleted file mode 100644 index a73596810..000000000 --- a/spec/fabricators/admin_user_fabricator.rb +++ /dev/null @@ -1,29 +0,0 @@ -# currently identity code generation not implemented, -# thus default user is FI for a while -Fabricator(:admin_user) do - username 'gitlab' - password 'ghyt9e4fu' - password_confirmation 'ghyt9e4fu' - email { sequence(:email) { |i| "info#{i}@example.com" } } - country_code 'FI' - roles ['admin'] -end - -Fabricator(:ee_user, from: :admin_user) do - identity_code "45002036517" - country_code 'EE' - username 'user1' - password 'testtest' - password_confirmation 'testtest' - roles ['admin'] -end - -# Valid identity codes -# 48805195231 -# 45002036517 -# 47601126511 -# 48802292754 -# 45912080223 -# 34406056538 -# 39503140321 -# 39507241618 diff --git a/spec/fabricators/api_user_fabricator.rb b/spec/fabricators/api_user_fabricator.rb deleted file mode 100644 index 43fc9b553..000000000 --- a/spec/fabricators/api_user_fabricator.rb +++ /dev/null @@ -1,14 +0,0 @@ -# default fabricator should be reusable -Fabricator(:api_user) do - username { sequence(:username) { |i| "username#{i}" } } - password 'ghyt9e4fu' - identity_code '14212128025' - registrar - active true - roles ['super'] -end - -# use dedicated fabricator for fixed one -Fabricator(:gitlab_api_user, from: :api_user) do - username 'gitlab' -end diff --git a/spec/fabricators/bank_statement_fabricator.rb b/spec/fabricators/bank_statement_fabricator.rb deleted file mode 100644 index 4219ab869..000000000 --- a/spec/fabricators/bank_statement_fabricator.rb +++ /dev/null @@ -1,6 +0,0 @@ -Fabricator(:bank_statement) do - bank_code { '767' } - iban { 'EE557700771000598731' } - queried_at { Time.zone.now } - bank_transactions(count: 2) -end diff --git a/spec/fabricators/bank_transaction_fabricator.rb b/spec/fabricators/bank_transaction_fabricator.rb deleted file mode 100644 index e284bbd83..000000000 --- a/spec/fabricators/bank_transaction_fabricator.rb +++ /dev/null @@ -1,6 +0,0 @@ -Fabricator(:bank_transaction) do - currency { 'EUR' } - sum { 100.0 } - description { 'Invoice no. 1' } - reference_no { 'RF2405752128' } -end diff --git a/spec/fabricators/blocked_domain_fabricator.rb b/spec/fabricators/blocked_domain_fabricator.rb deleted file mode 100644 index 363cc0526..000000000 --- a/spec/fabricators/blocked_domain_fabricator.rb +++ /dev/null @@ -1,3 +0,0 @@ -Fabricator(:blocked_domain) do - names ['ftp.ee', 'cache.ee'] -end diff --git a/spec/fabricators/certificate_fabricator.rb b/spec/fabricators/certificate_fabricator.rb deleted file mode 100644 index 804543c39..000000000 --- a/spec/fabricators/certificate_fabricator.rb +++ /dev/null @@ -1,36 +0,0 @@ -# default fabricator should be reusable -Fabricator(:certificate) do - api_user - common_name 'cn' - md5 'md5hash' - interface 'api' - csr "-----BEGIN CERTIFICATE REQUEST-----\n" \ - "MIIE+DCCAuACAQAwgZ0xCzAJBgNVBAYTAkVFMREwDwYDVQQIDAhIYXJqdW1hYTEQ\n" \ - "MA4GA1UEBwwHVGFsbGlubjEbMBkGA1UECgwSRWVzdGkgSW50ZXJuZXRpIFNBMRIw\n" \ - "EAYDVQQLDAlSRUdJU1RSQVIxEjAQBgNVBAMMCXdlYmNsaWVudDEkMCIGCSqGSIb3\n" \ - "DQEJARYVd2ViY2xpZW50QGludGVybmV0LmVlMIICIjANBgkqhkiG9w0BAQEFAAOC\n" \ - "Ag8AMIICCgKCAgEAuXronFj8CxPWGkyUhXf+/WirkFGb8a/My2+7GvQWYE10Nq4C\n" \ - "u9wDgjU3AuLw8qzwEeE3Z5uxHXWfwnshXOF6aJNCQWUsrs0odCxw69iIwCNGKhyF\n" \ - "jljtx8uSH8RRSRc8BFIUkvUpmp8m7kZTlB4FDey+XaGy4p/rImiAiwfFMIJMjdE9\n" \ - "9gk0EGDbomgP6KC3Ss/iQfuOFCQWSqjFuvp3mygr193YplaPgeLM1ERIW1LVFGDK\n" \ - "jy6keZ3E/Vb4O4qUPDRgTMr2KWM3Auzh2hXCymHNWn3yRn5Q4KSjJbG/P7Kz5nfZ\n" \ - "kY3eVRBIBll+1Q0VV7g+1B48zzjZX2qiY3iL77MV1oL17KeOO3PAxsEtptdqNgUa\n" \ - "Fpp73dwPST1ZKvq8FSgDKcdTCziSeViGhXjJRpEMr8FoeKNO7nvd1maKN9HAOy75\n" \ - "eSxatj6LoQ+JFN7Ci3IbwKFI7BnIHbEr9eP7O7Qbhljz2GE9+GWUqr3zwUEgpFSI\n" \ - "crAnRHQI2ALakEMsryF416zg5yr/bJp8/IzgZLaKpBVLOL88sI6r+JRdM6QXvKYx\n" \ - "XhamV6bH6CrR8ZYN4okaZH6sAcy8eyBnEmc05h/KsDzTNadwadeZe73F+PltoEXH\n" \ - "XgtpTpQ8XarN1uLq99WD6gWilAx3LF/xetCO86+w/MkYBmfOrXge+WLUUW8CAwEA\n" \ - "AaAVMBMGCSqGSIb3DQEJBzEGDAR0ZXN0MA0GCSqGSIb3DQEBCwUAA4ICAQAkTlU3\n" \ - "RcI6UMRA7As2FJSph3QurPebQFoZhnhMD+hb6+hXip8MY77YxLwo/ihB9wghaZKL\n" \ - "uV0BxjdZgjDt9GhA8dtPgaCp5LvB6kQYvcEzRvitN2CpJhtz39rlF3gxuy+RtpNf\n" \ - "5KbC691FivoXur1qx9I7mc4snB3DTzLiJPIZ6nQzPYcSVpPCbns30N/i/sOdHO0o\n" \ - "9hP5wlhCdYrOxad993m+InpMDyDWhB1+TA9ZO7gYpg8S4kBX3Cz9OXe80Pe56ZdK\n" \ - "pcgjTXnUDjNSRRGamJib2lyZ/axMbb/etwyy3X+jBDuOQropkmgrPEFJHpgNlFah\n" \ - "BuW7KEASqbw5YxpTSc0nDk5uxBw3voL8fk9M1sX64tbzGAEBRZnrWGeb1mOLM/YI\n" \ - "K6ocAYSBhNmWUzpHTwL7qSeP9ztQUGzoGHyRjBdan+1U2G75Kpj+TjEm/X8wmtnq\n" \ - "3/qVhUYNEavcZbgR1gSE45+mS8NsD7Oq0Xdc0UKsVDbUcCGIkGG9+ERAbRznfi3W\n" \ - "qhChtUxySX8T3SmX5mviwlJ5OwQVjdUF1/2voPK0oFK7zV+wZqcuORzDKdqB8XV7\n" \ - "MDcQjza4EOB78OmcHDgQ7nMXuY7/UL4F+bRZosxPy43X2JId5d+/GpgV8sP9dzK8\n" \ - "UGJDNEZ2YsBbPuKZS+2eNZ8g3sjjFBeadvrQ1w==\n" \ - "-----END CERTIFICATE REQUEST-----" -end diff --git a/spec/fabricators/contact_fabricator.rb b/spec/fabricators/contact_fabricator.rb deleted file mode 100644 index 8f68c518d..000000000 --- a/spec/fabricators/contact_fabricator.rb +++ /dev/null @@ -1,18 +0,0 @@ -Fabricator(:contact) do - registrar { Fabricate(:registrar) } - code { sequence(:code) { |i| "1234#{i}#{rand(1000)}" } } - auth_info 'password' - name 'test name' - phone '+372.12345678' - email { sequence(:email) { |i| "test#{i}@test.com" } } - street 'Short street 11' - city 'Tallinn' - zip '11111' - country_code 'EE' - ident '37605030299' - ident_type 'priv' - ident_country_code 'EE' - # rubocop: disable Style/SymbolProc - after_validation { |c| c.disable_generate_auth_info! } - # rubocop: enamble Style/SymbolProc -end diff --git a/spec/fabricators/dnskey_fabricator.rb b/spec/fabricators/dnskey_fabricator.rb deleted file mode 100644 index cf35cd932..000000000 --- a/spec/fabricators/dnskey_fabricator.rb +++ /dev/null @@ -1,13 +0,0 @@ -Fabricator(:dnskey) do - alg 8 - flags 257 - protocol 3 - public_key 'AwEAAaOf5+lz3ftsL+0CCvfJbhUF/NVsNh8BKo61oYs5fXVbuWDiH872 '\ - 'LC8uKDO92TJy7Q4TF9XMAKMMlf1GMAxlRspD749SOCTN00sqfWx1OMTu '\ - 'a28L1PerwHq7665oDJDKqR71btcGqyLKhe2QDvCdA0mENimF1NudX1BJ '\ - 'DDFi6oOZ0xE/0CuveB64I3ree7nCrwLwNs56kXC4LYoX3XdkOMKiJLL/ '\ - 'MAhcxXa60CdZLoRtTEW3z8/oBq4hEAYMCNclpbd6y/exScwBxFTdUfFk '\ - 'KsdNcmvai1lyk9vna0WQrtpYpHKMXvY9LFHaJxCOLR4umfeQ42RuTd82 lqfU6ClMeXs=' - ds_digest_type 2 - domain -end diff --git a/spec/fabricators/domain_contact_fabricator.rb b/spec/fabricators/domain_contact_fabricator.rb deleted file mode 100644 index 9f693ef51..000000000 --- a/spec/fabricators/domain_contact_fabricator.rb +++ /dev/null @@ -1,12 +0,0 @@ -Fabricator(:domain_contact) do - contact { Fabricate(:contact) } - type 'TechDomainContact' -end - -Fabricator(:tech_domain_contact, from: :domain_contact) do - type 'TechDomainContact' -end - -Fabricator(:admin_domain_contact, from: :domain_contact) do - type 'AdminDomainContact' -end diff --git a/spec/fabricators/domain_fabricator.rb b/spec/fabricators/domain_fabricator.rb deleted file mode 100644 index e1ee9b989..000000000 --- a/spec/fabricators/domain_fabricator.rb +++ /dev/null @@ -1,16 +0,0 @@ -Fabricator(:domain) do - name { sequence(:name) { |i| "domain#{i}.ee" } } - valid_to Date.new(2014, 8, 7) - period 1 - period_unit 'y' - registrant { Fabricate(:registrant) } - nameservers(count: 3) - admin_domain_contacts(count: 1) { Fabricate(:admin_domain_contact) } - tech_domain_contacts(count: 1) { Fabricate(:tech_domain_contact) } - registrar { Fabricate(:registrar) } - auth_info '98oiewslkfkd' -end - -Fabricator(:domain_with_dnskeys, from: :domain) do - after_create { |domain| Fabricate(:dnskey, domain: domain) } -end diff --git a/spec/fabricators/domain_transfer_fabricator.rb b/spec/fabricators/domain_transfer_fabricator.rb deleted file mode 100644 index f16e1932e..000000000 --- a/spec/fabricators/domain_transfer_fabricator.rb +++ /dev/null @@ -1,5 +0,0 @@ -Fabricator(:domain_transfer) do - domain - transfer_from { Fabricate(:registrar) } - transfer_to { Fabricate(:registrar) } -end diff --git a/spec/fabricators/epp_domain_fabricator.rb b/spec/fabricators/epp_domain_fabricator.rb deleted file mode 100644 index 35deda396..000000000 --- a/spec/fabricators/epp_domain_fabricator.rb +++ /dev/null @@ -1 +0,0 @@ -Fabricator(:epp_domain, from: :domain, class_name: 'Epp::Domain') diff --git a/spec/fabricators/epp_session_fabricator.rb b/spec/fabricators/epp_session_fabricator.rb deleted file mode 100644 index 24145c78f..000000000 --- a/spec/fabricators/epp_session_fabricator.rb +++ /dev/null @@ -1,4 +0,0 @@ -Fabricator(:epp_session) do - session_id 'test' - data { { api_user_id: 1 } } -end diff --git a/spec/fabricators/invoice_fabricator.rb b/spec/fabricators/invoice_fabricator.rb deleted file mode 100644 index 31d951cf1..000000000 --- a/spec/fabricators/invoice_fabricator.rb +++ /dev/null @@ -1,13 +0,0 @@ -Fabricator(:invoice) do - buyer_name 'Registrar 1' - currency { 'EUR' } - due_date { Time.zone.now.to_date + 1.day } - invoice_type 'DEB' - seller_iban { '123' } - seller_name { 'EIS' } - seller_city { 'Tallinn' } - seller_street { 'Paldiski mnt. 123' } - invoice_items(count: 2) - vat_prc 0.2 - buyer { Fabricate(:registrar) } -end diff --git a/spec/fabricators/invoice_item_fabricator.rb b/spec/fabricators/invoice_item_fabricator.rb deleted file mode 100644 index 24d01676e..000000000 --- a/spec/fabricators/invoice_item_fabricator.rb +++ /dev/null @@ -1,6 +0,0 @@ -Fabricator(:invoice_item) do - description { 'add money' } - unit 1 - amount 1 - price 150 -end diff --git a/spec/fabricators/keyrelay_fabricator.rb b/spec/fabricators/keyrelay_fabricator.rb deleted file mode 100644 index 436518ef8..000000000 --- a/spec/fabricators/keyrelay_fabricator.rb +++ /dev/null @@ -1,10 +0,0 @@ -Fabricator(:keyrelay) do - pa_date { Time.zone.now } - expiry_relative 'P1W' - key_data_public_key 'abc' - key_data_flags 0 - key_data_protocol 3 - key_data_alg 3 - auth_info_pw 'abc' - domain -end diff --git a/spec/fabricators/message_fabricator.rb b/spec/fabricators/message_fabricator.rb deleted file mode 100644 index 6204c4fd3..000000000 --- a/spec/fabricators/message_fabricator.rb +++ /dev/null @@ -1,3 +0,0 @@ -Fabricator(:message) do - body 'fabricator body' -end diff --git a/spec/fabricators/nameserver_fabricator.rb b/spec/fabricators/nameserver_fabricator.rb deleted file mode 100644 index f73668b25..000000000 --- a/spec/fabricators/nameserver_fabricator.rb +++ /dev/null @@ -1,4 +0,0 @@ -Fabricator(:nameserver) do - hostname { sequence(:hostname) { |i| "ns.test#{i}.ee" } } - ipv4 '192.168.1.1' -end diff --git a/spec/fabricators/registrant_fabricator.rb b/spec/fabricators/registrant_fabricator.rb deleted file mode 100644 index 42cff7cdf..000000000 --- a/spec/fabricators/registrant_fabricator.rb +++ /dev/null @@ -1,18 +0,0 @@ -Fabricator(:registrant) do - registrar { Fabricate(:registrar) } - code { sequence(:code) { |i| "REGISTRANT#{i}#{rand(1000)}" } } - auth_info 'password' - name 'test name' - phone '+372.12345678' - email { sequence(:email) { |i| "test#{i}@test.com" } } - street 'Short street 11' - city 'Tallinn' - zip '11111' - country_code 'EE' - ident '37605030299' - ident_type 'priv' - ident_country_code 'EE' - # rubocop: disable Style/SymbolProc - after_validation { |c| c.disable_generate_auth_info! } - # rubocop: enamble Style/SymbolProc -end diff --git a/spec/fabricators/registrant_verification_fabricator.rb b/spec/fabricators/registrant_verification_fabricator.rb deleted file mode 100644 index c0b5fd65f..000000000 --- a/spec/fabricators/registrant_verification_fabricator.rb +++ /dev/null @@ -1,7 +0,0 @@ -Fabricator(:registrant_verification) do - domain_name { sequence(:name) { |i| "domain#{i}.ee" } } - domain(fabricate: :domain) - verification_token '123' - action 'confirmed' - action_type 'registrant_change' -end diff --git a/spec/fabricators/registrar_fabricator.rb b/spec/fabricators/registrar_fabricator.rb deleted file mode 100644 index 37236cb87..000000000 --- a/spec/fabricators/registrar_fabricator.rb +++ /dev/null @@ -1,54 +0,0 @@ -Fabricator(:registrar) do - name { sequence(:name) { |i| "Registrar #{i}" } } - reg_no { sequence(:reg_no) { |i| "123#{i}" } } - street 'Street 999' - city 'Town' - state 'County' - zip 'Postal' - email 'info@registrar1.ee' - country_code 'EE' - code { sequence(:code) { |i| "REGISTRAR#{i}" } } - reference_no { sequence(:reference_no) { |i| "RF#{i}" } } -end - -Fabricator(:registrar_with_no_account_activities, from: :registrar) do - accounts(count: 1) { Fabricate(:account, account_activities: []) } -end - -Fabricator(:registrar1, from: :registrar) do - name 'registrar1' - reg_no '111' - street 'Street 111' - city 'Town' - state 'County' - zip 'Postal' - email 'info@registrar1.ee' - code { sequence(:code) { |i| "FIRST#{i}" } } -end - -Fabricator(:registrar2, from: :registrar) do - name 'registrar2' - reg_no '222' - street 'Street 222' - city 'Town' - state 'County' - zip 'Postal' - email 'info@registrar2.ee' - code { sequence(:code) { |i| "SECOND#{i}" } } -end - -Fabricator(:eis, from: :registrar) do - name 'EIS' - reg_no '90010019' - phone '+372 727 1000' - country_code 'EE' - vat_no 'EE101286464' - email 'info@internet.ee' - state 'Harjumaa' - city 'Tallinn' - street 'Paldiski mnt 80' - zip '10617' - website 'www.internet.ee' - code { sequence(:code) { |i| "EIS#{i}" } } - accounts(count: 1) { Fabricate(:account, account_activities: []) } -end diff --git a/spec/fabricators/reserved_domain_fabricator.rb b/spec/fabricators/reserved_domain_fabricator.rb deleted file mode 100644 index 3bbdadbe1..000000000 --- a/spec/fabricators/reserved_domain_fabricator.rb +++ /dev/null @@ -1,3 +0,0 @@ -Fabricator(:reserved_domain) do - name { sequence(:name) { |i| "domain#{i}.ee" } } -end diff --git a/spec/fabricators/zone_fabricator.rb b/spec/fabricators/zone_fabricator.rb deleted file mode 100644 index e7bf81c42..000000000 --- a/spec/fabricators/zone_fabricator.rb +++ /dev/null @@ -1,16 +0,0 @@ -Fabricator(:zone, from: 'DNS::Zone') do - origin 'ee' - ttl 43200 - refresh 3600 - expire 1209600 - minimum_ttl 3600 - email 'hostmaster.eestiinternet.ee' - master_nameserver 'ns.tld.ee' - ns_records "ee. IN NS ns.ut.ee.\nee. IN NS ns.tld.ee.\nee. IN NS sunic.sunet.se.\n" \ - "ee. IN NS ee.aso.ee.\nee. IN NS b.tld.ee.\nee. IN NS ns.eenet.ee.\nee. IN NS e.tld.ee." - a_records "ns.ut.ee. IN A 193.40.5.99\nns.tld.ee. IN A 195.43.87.10\nee.aso.ee. IN A 213.184.51.122\n" \ - "b.tld.ee. IN A 194.146.106.110\nns.eenet.ee. IN A 193.40.56.245\ne.tld.ee. IN A 204.61.216.36" - a4_records "ee.aso.ee. IN AAAA 2a02:88:0:21::2\nb.tld.ee. IN AAAA 2001:67c:1010:28::53\n" \ - "ns.eenet.ee. IN AAAA 2001:bb8::1\ne.tld.ee. IN AAAA 2001:678:94:53::53" - after_build { |x| x.retry = 900 } -end diff --git a/spec/factories/account.rb b/spec/factories/account.rb index 65f40a433..4407b1f86 100644 --- a/spec/factories/account.rb +++ b/spec/factories/account.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :account do account_type Account::CASH balance 1 diff --git a/spec/factories/account_activity.rb b/spec/factories/account_activity.rb index 3735349b9..b5dd348f2 100644 --- a/spec/factories/account_activity.rb +++ b/spec/factories/account_activity.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :account_activity do sum 1.0 account diff --git a/spec/factories/admin_domain_contact.rb b/spec/factories/admin_domain_contact.rb index 786825214..bdfb193e3 100644 --- a/spec/factories/admin_domain_contact.rb +++ b/spec/factories/admin_domain_contact.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :admin_domain_contact, parent: :domain_contact, class: AdminDomainContact do end diff --git a/spec/factories/admin_user.rb b/spec/factories/admin_user.rb index 0714d9f1f..8f948062d 100644 --- a/spec/factories/admin_user.rb +++ b/spec/factories/admin_user.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :admin_user do username 'test' sequence(:email) { |n| "test#{n}@test.com" } diff --git a/spec/factories/api_user.rb b/spec/factories/api_user.rb index a38fb8bf9..a3f9623b6 100644 --- a/spec/factories/api_user.rb +++ b/spec/factories/api_user.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :api_user do sequence(:username) { |n| "test#{n}" } password 'a' * ApiUser.min_password_length diff --git a/spec/factories/bank_statement.rb b/spec/factories/bank_statement.rb new file mode 100644 index 000000000..fa4865496 --- /dev/null +++ b/spec/factories/bank_statement.rb @@ -0,0 +1,11 @@ +FactoryBot.define do + factory :bank_statement do + bank_code { '767' } + iban { 'EE557700771000598731' } + queried_at { Time.zone.now } + + after :build do |bank_statement| + bank_statement.bank_transactions << FactoryBot.create_pair(:bank_transaction) + end + end +end diff --git a/spec/factories/bank_transaction.rb b/spec/factories/bank_transaction.rb new file mode 100644 index 000000000..ebe471984 --- /dev/null +++ b/spec/factories/bank_transaction.rb @@ -0,0 +1,8 @@ +FactoryBot.define do + factory :bank_transaction do + currency { 'EUR' } + sum { 100.0 } + description { 'Invoice no. 1' } + reference_no { 'RF2405752128' } + end +end diff --git a/spec/factories/billing/price.rb b/spec/factories/billing/price.rb index b7d49653d..4d44cf6a1 100644 --- a/spec/factories/billing/price.rb +++ b/spec/factories/billing/price.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :price, class: Billing::Price do price Money.from_amount(1) valid_from Time.zone.parse('05.07.2010') diff --git a/spec/factories/contact.rb b/spec/factories/contact.rb index e47b67012..7e7a9a6a2 100644 --- a/spec/factories/contact.rb +++ b/spec/factories/contact.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :contact do name 'test' sequence(:code) { |n| "test#{n}" } diff --git a/spec/factories/dns/zone.rb b/spec/factories/dns/zone.rb index c1180bb50..e88a3f2fe 100644 --- a/spec/factories/dns/zone.rb +++ b/spec/factories/dns/zone.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :zone, class: DNS::Zone do sequence(:origin) { |n| "test#{n}" } ttl 1 diff --git a/spec/factories/dnskey.rb b/spec/factories/dnskey.rb index ed90b7549..4dbf0a788 100644 --- a/spec/factories/dnskey.rb +++ b/spec/factories/dnskey.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :dnskey do alg Dnskey::ALGORITHMS.first flags Dnskey::FLAGS.first @@ -10,5 +10,6 @@ FactoryGirl.define do 'DDFi6oOZ0xE/0CuveB64I3ree7nCrwLwNs56kXC4LYoX3XdkOMKiJLL/ '\ 'MAhcxXa60CdZLoRtTEW3z8/oBq4hEAYMCNclpbd6y/exScwBxFTdUfFk '\ 'KsdNcmvai1lyk9vna0WQrtpYpHKMXvY9LFHaJxCOLR4umfeQ42RuTd82 lqfU6ClMeXs=' + domain end end diff --git a/spec/factories/domain.rb b/spec/factories/domain.rb index 4c1b4b1cc..191a8055c 100644 --- a/spec/factories/domain.rb +++ b/spec/factories/domain.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :domain do sequence(:name) { |n| "test#{n}.com" } period 1 @@ -7,8 +7,8 @@ FactoryGirl.define do registrant after :build do |domain| - domain.admin_domain_contacts << FactoryGirl.build(:admin_domain_contact) - domain.tech_domain_contacts << FactoryGirl.build(:tech_domain_contact) + domain.admin_domain_contacts << FactoryBot.build(:admin_domain_contact) + domain.tech_domain_contacts << FactoryBot.build(:tech_domain_contact) end factory :domain_without_force_delete do diff --git a/spec/factories/domain_contact.rb b/spec/factories/domain_contact.rb index ae05fd293..caf964ed3 100644 --- a/spec/factories/domain_contact.rb +++ b/spec/factories/domain_contact.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :domain_contact do contact end diff --git a/spec/factories/domain_transfer.rb b/spec/factories/domain_transfer.rb new file mode 100644 index 000000000..4ecbfd084 --- /dev/null +++ b/spec/factories/domain_transfer.rb @@ -0,0 +1,7 @@ +FactoryBot.define do + factory :domain_transfer do + domain + transfer_from { FactoryBot.create(:registrar) } + transfer_to { FactoryBot.create(:registrar) } + end +end diff --git a/spec/factories/epp_session.rb b/spec/factories/epp_session.rb index 61fa06151..96dd78da3 100644 --- a/spec/factories/epp_session.rb +++ b/spec/factories/epp_session.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :epp_session do end diff --git a/spec/factories/invoice.rb b/spec/factories/invoice.rb new file mode 100644 index 000000000..7eeed32b9 --- /dev/null +++ b/spec/factories/invoice.rb @@ -0,0 +1,18 @@ +FactoryBot.define do + factory :invoice do + buyer_name 'Registrar 1' + currency { 'EUR' } + due_date { Time.zone.now.to_date + 1.day } + invoice_type 'DEB' + seller_iban { '123' } + seller_name { 'EIS' } + seller_city { 'Tallinn' } + seller_street { 'Paldiski mnt. 123' } + vat_prc 0.2 + buyer { FactoryBot.create(:registrar) } + + after :build do |invoice| + invoice.invoice_items << FactoryBot.create_pair(:invoice_item) + end + end +end diff --git a/spec/factories/invoice_item.rb b/spec/factories/invoice_item.rb new file mode 100644 index 000000000..3dee95319 --- /dev/null +++ b/spec/factories/invoice_item.rb @@ -0,0 +1,8 @@ +FactoryBot.define do + factory :invoice_item do + description { 'add money' } + unit 1 + amount 1 + price 150 + end +end diff --git a/spec/factories/keyrelay.rb b/spec/factories/keyrelay.rb new file mode 100644 index 000000000..4587af999 --- /dev/null +++ b/spec/factories/keyrelay.rb @@ -0,0 +1,12 @@ +FactoryBot.define do + factory :keyrelay do + pa_date { Time.zone.now } + expiry_relative 'P1W' + key_data_public_key 'abc' + key_data_flags 0 + key_data_protocol 3 + key_data_alg 3 + auth_info_pw 'abc' + domain + end +end diff --git a/spec/factories/message.rb b/spec/factories/message.rb new file mode 100644 index 000000000..6ae235aaf --- /dev/null +++ b/spec/factories/message.rb @@ -0,0 +1,5 @@ +FactoryBot.define do + factory :message do + body 'fabricator body' + end +end diff --git a/spec/factories/nameserver.rb b/spec/factories/nameserver.rb index ebe7a7909..edae45597 100644 --- a/spec/factories/nameserver.rb +++ b/spec/factories/nameserver.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :nameserver do sequence(:hostname) { |n| "ns.test#{n}.ee" } ipv4 '192.168.1.1' diff --git a/spec/factories/registrant.rb b/spec/factories/registrant.rb index d84d1688e..f21fbe7c4 100644 --- a/spec/factories/registrant.rb +++ b/spec/factories/registrant.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :registrant, parent: :contact, class: Registrant do name 'test' diff --git a/spec/factories/registrant_user.rb b/spec/factories/registrant_user.rb index 38f883067..29d0a2479 100644 --- a/spec/factories/registrant_user.rb +++ b/spec/factories/registrant_user.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :registrant_user do end diff --git a/spec/factories/registrant_verification.rb b/spec/factories/registrant_verification.rb new file mode 100644 index 000000000..5ecc81fa5 --- /dev/null +++ b/spec/factories/registrant_verification.rb @@ -0,0 +1,9 @@ +FactoryBot.define do + factory :registrant_verification do + sequence(:domain_name) { |i| "domain#{i}.ee" } + domain + verification_token '123' + action 'confirmed' + action_type 'registrant_change' + end +end diff --git a/spec/factories/registrar.rb b/spec/factories/registrar.rb index 426561dda..df7d73690 100644 --- a/spec/factories/registrar.rb +++ b/spec/factories/registrar.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :registrar do sequence(:name) { |n| "test#{n}" } sequence(:code) { |n| "test#{n}" } diff --git a/spec/factories/reserved_domain.rb b/spec/factories/reserved_domain.rb new file mode 100644 index 000000000..54d3c61df --- /dev/null +++ b/spec/factories/reserved_domain.rb @@ -0,0 +1,5 @@ +FactoryBot.define do + factory :reserved_domain do + sequence(:name) { |i| "domain#{i}.ee" } + end +end diff --git a/spec/factories/tech_domain_contact.rb b/spec/factories/tech_domain_contact.rb index e407474a3..b3b3f0564 100644 --- a/spec/factories/tech_domain_contact.rb +++ b/spec/factories/tech_domain_contact.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :tech_domain_contact, parent: :domain_contact, class: TechDomainContact do end diff --git a/spec/factories/white_ip.rb b/spec/factories/white_ip.rb index eb4033fc9..f2b46711c 100644 --- a/spec/factories/white_ip.rb +++ b/spec/factories/white_ip.rb @@ -1,4 +1,4 @@ -FactoryGirl.define do +FactoryBot.define do factory :white_ip do ipv4 '127.0.0.1' end diff --git a/spec/factory_lint_spec.rb b/spec/factory_lint_spec.rb index 619779827..8d6386f2f 100644 --- a/spec/factory_lint_spec.rb +++ b/spec/factory_lint_spec.rb @@ -1,15 +1,15 @@ require_relative 'rails_helper' -RSpec.describe 'FactoryGirl', db: true do +RSpec.describe 'FactoryBot', db: true do before :example do allow(Contact).to receive(:address_processing?).and_return(false) end it 'lints factories' do - factories_to_lint = FactoryGirl.factories.reject do |factory| + factories_to_lint = FactoryBot.factories.reject do |factory| %i(reserved_domain).include?(factory.name) || factory.name.to_s =~ /^domain/ # Ignore the ones with domain_name validator end - FactoryGirl.lint factories_to_lint + FactoryBot.lint factories_to_lint end end diff --git a/spec/features/registrar/sign_in/mobile_id_spec.rb b/spec/features/registrar/sign_in/mobile_id_spec.rb index 9c1b42ee5..5373be4ec 100644 --- a/spec/features/registrar/sign_in/mobile_id_spec.rb +++ b/spec/features/registrar/sign_in/mobile_id_spec.rb @@ -1,7 +1,7 @@ require 'rails_helper' RSpec.feature 'Mobile ID login', db: true do - given!(:api_user) { Fabricate(:api_user, identity_code: 1234) } + given!(:api_user) { create(:api_user, identity_code: 1234) } background do Setting.registrar_ip_whitelist_enabled = false diff --git a/spec/models/admin_user_spec.rb b/spec/models/admin_user_spec.rb index 84a653614..f25ea77bd 100644 --- a/spec/models/admin_user_spec.rb +++ b/spec/models/admin_user_spec.rb @@ -13,7 +13,7 @@ RSpec.describe AdminUser do context 'with valid attributes' do before do - @admin_user = Fabricate(:admin_user) + @admin_user = create(:admin_user) end it 'should require password confirmation when changing password' do diff --git a/spec/models/api_user_spec.rb b/spec/models/api_user_spec.rb index 12213c819..89feeac6d 100644 --- a/spec/models/api_user_spec.rb +++ b/spec/models/api_user_spec.rb @@ -28,7 +28,7 @@ RSpec.describe ApiUser do context 'with valid attributes' do before do - @api_user = Fabricate(:api_user) + @api_user = create(:api_user) end it 'should be valid' do @@ -37,7 +37,7 @@ RSpec.describe ApiUser do end it 'should be valid twice' do - @api_user = Fabricate(:api_user) + @api_user = create(:api_user) @api_user.valid? @api_user.errors.full_messages.should match_array([]) end diff --git a/spec/models/bank_statement_spec.rb b/spec/models/bank_statement_spec.rb index d115f6f04..8b10307fc 100644 --- a/spec/models/bank_statement_spec.rb +++ b/spec/models/bank_statement_spec.rb @@ -20,9 +20,8 @@ describe BankStatement do end context 'with valid attributes' do - before :all do - @bank_statement = Fabricate(:bank_statement) - Fabricate(:eis) + before do + @bank_statement = create(:bank_statement) end it 'should be valid' do @@ -31,67 +30,32 @@ describe BankStatement do end it 'should be valid twice' do - @bank_statement = Fabricate(:bank_statement) + @bank_statement = create(:bank_statement) @bank_statement.valid? @bank_statement.errors.full_messages.should match_array([]) end - it 'should bind transactions with invoices' do - # sometimes it works, sometimes not - # r = Fabricate(:registrar_with_no_account_activities, reference_no: 'RF7086666663') - # invoice = r.issue_prepayment_invoice(200, 'add some money') - - # bs = Fabricate(:bank_statement, bank_transactions: [ - # Fabricate(:bank_transaction, { - # sum: 240.0, # with vat - # reference_no: 'RF7086666663', - # description: "Invoice no. #{invoice.number}" - # }), - # Fabricate(:bank_transaction, { - # sum: 240.0, - # reference_no: 'RF7086666663', - # description: "Invoice no. #{invoice.number}" - # }) - # ]) - - # bs.bank_transactions.count.should == 2 - - # AccountActivity.count.should == 0 - # bs.bind_invoices - - # AccountActivity.count.should == 1 - - # a = AccountActivity.last - # a.description.should == "Invoice no. #{invoice.number}" - # a.sum.should == BigDecimal.new('200.0') - # a.activity_type = AccountActivity::ADD_CREDIT - - # r.reload - # r.cash_account.reload - # r.cash_account.balance.should == 200.0 - - # bs.bank_transactions.unbinded.count.should == 1 - # bs.partially_binded?.should == true - end - it 'should not bind transactions with invalid match data' do - r = Fabricate(:registrar_with_no_account_activities, reference_no: 'RF7086666663') + r = create(:registrar, reference_no: 'RF7086666663') + + create(:account, registrar: r, account_type: 'cash', balance: 0) + r.issue_prepayment_invoice(200, 'add some money') - bs = Fabricate(:bank_statement, bank_transactions: [ - Fabricate(:bank_transaction, { + bs = create(:bank_statement, bank_transactions: [ + create(:bank_transaction, { sum: 240.0, # with vat reference_no: 'RF7086666662', description: 'Invoice no. 1' }), - Fabricate(:bank_transaction, { + create(:bank_transaction, { sum: 240.0, reference_no: 'RF7086666663', description: 'Invoice no. 4948934' }) ]) - bs.bank_transactions.count.should == 2 + bs.bank_transactions.count.should == 4 AccountActivity.count.should == 0 bs.bind_invoices @@ -100,7 +64,7 @@ describe BankStatement do r.cash_account.balance.should == 0.0 - bs.bank_transactions.unbinded.count.should == 2 + bs.bank_transactions.unbinded.count.should == 4 bs.not_binded?.should == true end diff --git a/spec/models/bank_transaction_spec.rb b/spec/models/bank_transaction_spec.rb index 627427d57..9a559bbd6 100644 --- a/spec/models/bank_transaction_spec.rb +++ b/spec/models/bank_transaction_spec.rb @@ -19,8 +19,8 @@ describe BankTransaction do context 'with valid attributes' do before :all do - @bank_transaction = Fabricate(:bank_transaction) - Fabricate(:eis) + @bank_transaction = create(:bank_transaction) + create(:registrar) end it 'should be valid' do @@ -29,27 +29,27 @@ describe BankTransaction do end it 'should be valid twice' do - @bank_transaction = Fabricate(:bank_statement) + @bank_transaction = create(:bank_statement) @bank_transaction.valid? @bank_transaction.errors.full_messages.should match_array([]) end it 'should not bind transaction with mismatching sums' do - r = Fabricate(:registrar_with_no_account_activities, reference_no: 'RF7086666663') + r = create(:registrar, reference_no: 'RF7086666663') invoice = r.issue_prepayment_invoice(200, 'add some money') - bt = Fabricate(:bank_transaction, { sum: 10 }) + bt = create(:bank_transaction, { sum: 10 }) bt.bind_invoice(invoice.number) bt.errors.full_messages.should match_array(["Invoice and transaction sums do not match"]) end it 'should not bind transaction with cancelled invoice' do - r = Fabricate(:registrar_with_no_account_activities, reference_no: 'RF7086666663') + r = create(:registrar, reference_no: 'RF7086666663') invoice = r.issue_prepayment_invoice(200, 'add some money') invoice.cancel - bt = Fabricate(:bank_transaction, { sum: 240 }) + bt = create(:bank_transaction, { sum: 240 }) bt.bind_invoice(invoice.number) bt.errors.full_messages.should match_array(["Cannot bind cancelled invoice"]) diff --git a/spec/models/concerns/domain/expirable_spec.rb b/spec/models/concerns/domain/expirable_spec.rb index 17c366819..242d9818a 100644 --- a/spec/models/concerns/domain/expirable_spec.rb +++ b/spec/models/concerns/domain/expirable_spec.rb @@ -7,11 +7,11 @@ RSpec.describe Domain, db: false do before :example do travel_to Time.zone.parse('05.07.2010 00:00') - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') - Fabricate.create(:domain, id: 1, expire_time: Time.zone.parse('04.07.2010 23:59')) - Fabricate.create(:domain, id: 2, expire_time: Time.zone.parse('05.07.2010 00:00')) - Fabricate.create(:domain, id: 3, expire_time: Time.zone.parse('05.07.2010 00:01')) + create(:domain, id: 1, expire_time: Time.zone.parse('04.07.2010 23:59')) + create(:domain, id: 2, expire_time: Time.zone.parse('05.07.2010 00:00')) + create(:domain, id: 3, expire_time: Time.zone.parse('05.07.2010 00:01')) end it 'returns expired domains' do diff --git a/spec/models/concerns/domain/force_delete_spec.rb b/spec/models/concerns/domain/force_delete_spec.rb index b454fb034..cc022a6d7 100644 --- a/spec/models/concerns/domain/force_delete_spec.rb +++ b/spec/models/concerns/domain/force_delete_spec.rb @@ -4,11 +4,15 @@ RSpec.describe Domain do it { is_expected.to alias_attribute(:force_delete_time, :force_delete_at) } before :example do - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') end it 'should set force delete time' do - domain = Fabricate(:domain) + domain = build(:domain) + domain.nameservers.build(attributes_for(:nameserver)) + domain.nameservers.build(attributes_for(:nameserver)) + domain.save! + domain.statuses = ['ok'] domain.schedule_force_delete diff --git a/spec/models/contact_spec.rb b/spec/models/contact_spec.rb index bef5b87be..80dfb47ad 100644 --- a/spec/models/contact_spec.rb +++ b/spec/models/contact_spec.rb @@ -2,7 +2,7 @@ require 'rails_helper' RSpec.describe Contact do before :example do - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') end context 'about class' do @@ -63,7 +63,7 @@ RSpec.describe Contact do context 'with valid attributes' do before :example do - @contact = Fabricate(:contact) + @contact = create(:contact, auth_info: 'password') end it 'should have one version' do @@ -102,7 +102,7 @@ RSpec.describe Contact do end it 'should remove ok status when other non linked status present' do - contact = Fabricate(:contact) + contact = create(:contact) contact.statuses = [Contact::SERVER_UPDATE_PROHIBITED] contact.statuses.should == [Contact::SERVER_UPDATE_PROHIBITED] # temp test contact.save @@ -110,9 +110,9 @@ RSpec.describe Contact do end it 'should have code' do - registrar = Fabricate.create(:registrar, code: 'registrarcode') + registrar = create(:registrar, code: 'registrarcode') - contact = Fabricate.build(:contact, registrar: registrar, code: 'contactcode') + contact = build(:contact, registrar: registrar, code: 'contactcode') contact.generate_code contact.save! @@ -120,7 +120,7 @@ RSpec.describe Contact do end it 'should save status notes' do - contact = Fabricate(:contact) + contact = create(:contact) contact.statuses = ['serverDeleteProhibited', 'serverUpdateProhibited'] contact.status_notes_array = [nil, 'update manually turned off'] contact.status_notes['serverDeleteProhibited'].should == nil @@ -134,7 +134,7 @@ RSpec.describe Contact do it 'should have not update ident updated at when initializing old contact' do # creating a legacy contact - contact = Fabricate(:contact) + contact = create(:contact) contact.update_column(:ident_updated_at, nil) Contact.find(contact.id).ident_updated_at.should == nil @@ -142,7 +142,7 @@ RSpec.describe Contact do context 'as birthday' do before do - @domain = Fabricate(:domain) + @domain = create(:domain) end it 'should have related domain descriptions hash' do @@ -178,13 +178,13 @@ RSpec.describe Contact do context 'after create' do it 'should not allow to use same code' do - registrar = Fabricate.create(:registrar, code: 'FIXED') + registrar = create(:registrar, code: 'FIXED') - Fabricate.create(:contact, + create(:contact, registrar: registrar, code: 'FIXED:new-code', auth_info: 'qwe321') - @contact = Fabricate.build(:contact, + @contact = build(:contact, registrar: registrar, code: 'FIXED:new-code', auth_info: 'qwe321') @@ -195,33 +195,33 @@ RSpec.describe Contact do end it 'should generate a new password' do - @contact = Fabricate.build(:contact, code: '123asd', auth_info: nil) + @contact = build(:contact, code: '123asd', auth_info: nil) @contact.auth_info.should == nil @contact.save.should == true @contact.auth_info.should_not be_nil end it 'should allow supported code format' do - @contact = Fabricate.build(:contact, code: 'CID:REG1:12345', registrar: Fabricate(:registrar, code: 'FIXED')) + @contact = build(:contact, code: 'CID:REG1:12345', registrar: create(:registrar, code: 'FIXED')) @contact.valid? @contact.errors.full_messages.should == [] end it 'should not allow unsupported characters in code' do - @contact = Fabricate.build(:contact, code: 'unsupported!ÄÖÜ~?', registrar: Fabricate(:registrar, code: 'FIXED')) + @contact = build(:contact, code: 'unsupported!ÄÖÜ~?', registrar: create(:registrar, code: 'FIXED')) @contact.valid? @contact.errors.full_messages.should == ['Code is invalid'] end it 'should generate code if empty code is given' do - @contact = Fabricate.build(:contact, code: '') + @contact = build(:contact, code: '') @contact.generate_code @contact.save! @contact.code.should_not == '' end it 'should not ignore empty spaces as code and generate new one' do - @contact = Fabricate.build(:contact, code: ' ', registrar: Fabricate(:registrar, code: 'FIXED')) + @contact = build(:contact, code: ' ', registrar: create(:registrar, code: 'FIXED')) @contact.generate_code @contact.valid?.should == true @contact.code.should =~ /FIXED:..../ @@ -230,8 +230,8 @@ RSpec.describe Contact do context 'after update' do before :example do - @contact = Fabricate.build(:contact, - registrar: Fabricate(:registrar, code: 'FIXED'), + @contact = build(:contact, + registrar: create(:registrar, code: 'FIXED'), code: '123asd', auth_info: 'qwe321') @contact.generate_code @@ -256,9 +256,9 @@ end describe Contact, '.destroy_orphans' do before do - Fabricate(:zone, origin: 'ee') - @contact_1 = Fabricate(:contact, code: 'asd12') - @contact_2 = Fabricate(:contact, code: 'asd13') + create(:zone, origin: 'ee') + @contact_1 = create(:contact, code: 'asd12') + @contact_2 = create(:contact, code: 'asd13') end it 'destroys orphans' do @@ -268,13 +268,13 @@ describe Contact, '.destroy_orphans' do end it 'should find one orphan' do - Fabricate(:domain, registrant: Registrant.find(@contact_1.id)) + create(:domain, registrant: Registrant.find(@contact_1.id)) Contact.find_orphans.count.should == 1 Contact.find_orphans.last.should == @contact_2 end it 'should find no orphans' do - Fabricate(:domain, registrant: Registrant.find(@contact_1.id), admin_contacts: [@contact_2]) + create(:domain, registrant: Registrant.find(@contact_1.id), admin_contacts: [@contact_2]) cc = Contact.count Contact.find_orphans.count.should == 0 Contact.destroy_orphans @@ -424,13 +424,13 @@ RSpec.describe Contact do subject(:reg_no) { contact.reg_no } context 'when contact is legal entity' do - let(:contact) { FactoryGirl.build_stubbed(:contact_legal_entity, ident: '1234') } + let(:contact) { build_stubbed(:contact_legal_entity, ident: '1234') } specify { expect(reg_no).to eq('1234') } end context 'when contact is private entity' do - let(:contact) { FactoryGirl.build_stubbed(:contact_private_entity, ident: '1234') } + let(:contact) { build_stubbed(:contact_private_entity, ident: '1234') } specify { expect(reg_no).to be_nil } end @@ -438,13 +438,13 @@ RSpec.describe Contact do describe '#id_code' do context 'when contact is private entity' do - let(:contact) { FactoryGirl.build_stubbed(:contact_private_entity, ident: '1234') } + let(:contact) { build_stubbed(:contact_private_entity, ident: '1234') } specify { expect(contact.id_code).to eq('1234') } end context 'when contact is legal entity' do - let(:contact) { FactoryGirl.build_stubbed(:contact_legal_entity, ident: '1234') } + let(:contact) { build_stubbed(:contact_legal_entity, ident: '1234') } specify { expect(contact.id_code).to be_nil } end diff --git a/spec/models/dnskey_spec.rb b/spec/models/dnskey_spec.rb index 9987de090..5c0f7859f 100644 --- a/spec/models/dnskey_spec.rb +++ b/spec/models/dnskey_spec.rb @@ -21,7 +21,7 @@ describe Dnskey do Setting.client_side_status_editing_enabled = true - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') end context 'with invalid attribute' do @@ -42,7 +42,17 @@ describe Dnskey do context 'with valid attributes' do before :example do - @dnskey = Fabricate(:dnskey) + @dnskey = create(:dnskey, + alg: 8, + flags: 257, + protocol: 3, + public_key: 'AwEAAaOf5+lz3ftsL+0CCvfJbhUF/NVsNh8BKo61oYs5fXVbuWDiH872 '\ + 'LC8uKDO92TJy7Q4TF9XMAKMMlf1GMAxlRspD749SOCTN00sqfWx1OMTu '\ + 'a28L1PerwHq7665oDJDKqR71btcGqyLKhe2QDvCdA0mENimF1NudX1BJ '\ + 'DDFi6oOZ0xE/0CuveB64I3ree7nCrwLwNs56kXC4LYoX3XdkOMKiJLL/ '\ + 'MAhcxXa60CdZLoRtTEW3z8/oBq4hEAYMCNclpbd6y/exScwBxFTdUfFk '\ + 'KsdNcmvai1lyk9vna0WQrtpYpHKMXvY9LFHaJxCOLR4umfeQ42RuTd82 lqfU6ClMeXs=', + ds_digest_type: 2) end it 'should be valid' do @@ -51,7 +61,7 @@ describe Dnskey do end it 'should be valid twice' do - @dnskey = Fabricate(:dnskey) + @dnskey = create(:dnskey) @dnskey.valid? @dnskey.errors.full_messages.should match_array([]) end @@ -66,7 +76,7 @@ describe Dnskey do # end it 'generates correct DS digest and DS key tag for ria.ee' do - d = Fabricate(:domain, name: 'ria.ee', dnskeys: [@dnskey]) + d = create(:domain, name: 'ria.ee', dnskeys: [@dnskey]) dk = d.dnskeys.last dk.generate_digest @@ -75,7 +85,7 @@ describe Dnskey do end it 'generates correct DS digest and DS key tag for emta.ee' do - d = Fabricate(:domain, name: 'emta.ee', dnskeys: [@dnskey]) + d = create(:domain, name: 'emta.ee', dnskeys: [@dnskey]) dk = d.dnskeys.last diff --git a/spec/models/domain_contact_spec.rb b/spec/models/domain_contact_spec.rb index 783d7e69b..fc7ec010e 100644 --- a/spec/models/domain_contact_spec.rb +++ b/spec/models/domain_contact_spec.rb @@ -2,7 +2,7 @@ require 'rails_helper' describe DomainContact do before :example do - @api_user = Fabricate(:domain_contact) + @api_user = create(:domain_contact) end context 'with invalid attribute' do @@ -32,7 +32,7 @@ describe DomainContact do context 'with valid attributes' do before :example do - @domain_contact = Fabricate(:domain_contact) + @domain_contact = create(:domain_contact, type: 'TechDomainContact') end it 'should be valid' do @@ -41,7 +41,7 @@ describe DomainContact do end it 'should be valid twice' do - @domain_contact = Fabricate(:domain_contact) + @domain_contact = create(:domain_contact) @domain_contact.valid? @domain_contact.errors.full_messages.should match_array([]) end @@ -51,11 +51,11 @@ describe DomainContact do end it 'should have one version' do - @domain_contact = Fabricate.create(:domain_contact) + @domain_contact = create(:domain_contact) with_versioning do @domain_contact.versions.reload.should == [] - @domain_contact.contact = Fabricate.create(:contact) + @domain_contact.contact = create(:contact) @domain_contact.save! @domain_contact.errors.full_messages.should match_array([]) @domain_contact.versions.size.should == 1 @@ -65,7 +65,7 @@ describe DomainContact do context 'with valid attributes with tech domain contact' do before :example do - @domain_contact = Fabricate(:tech_domain_contact) + @domain_contact = create(:tech_domain_contact) end it 'should be valid' do @@ -74,7 +74,7 @@ describe DomainContact do end it 'should be valid twice' do - @domain_contact = Fabricate(:tech_domain_contact) + @domain_contact = create(:tech_domain_contact) @domain_contact.valid? @domain_contact.errors.full_messages.should match_array([]) end @@ -84,11 +84,11 @@ describe DomainContact do end it 'should have one version' do - @domain_contact = Fabricate.create(:domain_contact) + @domain_contact = create(:domain_contact) with_versioning do @domain_contact.versions.reload.should == [] - @domain_contact.contact = Fabricate.create(:contact) + @domain_contact.contact = create(:contact) @domain_contact.save! @domain_contact.errors.full_messages.should match_array([]) @domain_contact.versions.size.should == 1 @@ -98,7 +98,7 @@ describe DomainContact do context 'with valid attributes with admin domain contact' do before :example do - @domain_contact = Fabricate(:admin_domain_contact) + @domain_contact = create(:admin_domain_contact) end it 'should be valid' do @@ -107,7 +107,7 @@ describe DomainContact do end it 'should be valid twice' do - @domain_contact = Fabricate(:admin_domain_contact) + @domain_contact = create(:admin_domain_contact) @domain_contact.valid? @domain_contact.errors.full_messages.should match_array([]) end @@ -119,7 +119,7 @@ describe DomainContact do it 'should have one version' do with_versioning do @domain_contact.versions.reload.should == [] - @domain_contact.contact = Fabricate.create(:contact) + @domain_contact.contact = create(:contact) @domain_contact.save @domain_contact.errors.full_messages.should match_array([]) @domain_contact.versions.size.should == 1 diff --git a/spec/models/domain_cron_spec.rb b/spec/models/domain_cron_spec.rb index 9b5e68f54..7fe2246a0 100644 --- a/spec/models/domain_cron_spec.rb +++ b/spec/models/domain_cron_spec.rb @@ -2,8 +2,8 @@ require 'rails_helper' RSpec.describe DomainCron do it 'should expire domains' do - Fabricate(:zone, origin: 'ee') - @domain = Fabricate(:domain) + create(:zone, origin: 'ee') + @domain = create(:domain) Setting.expire_warning_period = 1 Setting.redemption_grace_period = 1 @@ -25,8 +25,8 @@ RSpec.describe DomainCron do end it 'should start redemption grace period' do - Fabricate(:zone, origin: 'ee') - @domain = Fabricate(:domain) + create(:zone, origin: 'ee') + @domain = create(:domain) old_valid_to = Time.zone.now - 10.days @domain.valid_to = old_valid_to diff --git a/spec/models/domain_spec.rb b/spec/models/domain_spec.rb index 9cb27a751..fe9dae9a6 100644 --- a/spec/models/domain_spec.rb +++ b/spec/models/domain_spec.rb @@ -21,11 +21,11 @@ RSpec.describe Domain do Setting.client_side_status_editing_enabled = true - Fabricate(:zone, origin: 'ee') - Fabricate(:zone, origin: 'pri.ee') - Fabricate(:zone, origin: 'med.ee') - Fabricate(:zone, origin: 'fie.ee') - Fabricate(:zone, origin: 'com.ee') + create(:zone, origin: 'ee') + create(:zone, origin: 'pri.ee') + create(:zone, origin: 'med.ee') + create(:zone, origin: 'fie.ee') + create(:zone, origin: 'com.ee') end context 'with invalid attribute' do @@ -64,7 +64,7 @@ RSpec.describe Domain do context 'with valid attributes' do before :example do - @domain = Fabricate(:domain) + @domain = create(:domain) end it 'should be valid' do @@ -73,14 +73,14 @@ RSpec.describe Domain do end it 'should be valid twice' do - @domain = Fabricate(:domain) + @domain = create(:domain) @domain.valid? @domain.errors.full_messages.should match_array([]) end it 'should validate uniqueness of tech contacts' do - same_contact = Fabricate(:contact, code: 'same_contact') - domain = Fabricate(:domain) + same_contact = create(:contact, code: 'same_contact') + domain = create(:domain) domain.tech_contacts << same_contact domain.tech_contacts << same_contact domain.valid? @@ -88,8 +88,8 @@ RSpec.describe Domain do end it 'should validate uniqueness of tech contacts' do - same_contact = Fabricate(:contact, code: 'same_contact') - domain = Fabricate(:domain) + same_contact = create(:contact, code: 'same_contact') + domain = create(:domain) domain.admin_contacts << same_contact domain.admin_contacts << same_contact domain.valid? @@ -113,7 +113,7 @@ RSpec.describe Domain do end it 'should not find any domains with wrong pendings' do - domain = Fabricate(:domain) + domain = create(:domain) domain.registrant_verification_asked!('frame-str', '1') domain.registrant_verification_asked_at = 30.days.ago domain.save @@ -122,7 +122,7 @@ RSpec.describe Domain do end it 'should clean domain pendings' do - domain = Fabricate(:domain) + domain = create(:domain) domain.registrant_verification_asked!('frame-str', '1') domain.registrant_verification_asked_at = 30.days.ago domain.pending_delete! @@ -165,7 +165,7 @@ RSpec.describe Domain do end it 'should start redemption grace period' do - domain = Fabricate(:domain) + domain = create(:domain) DomainCron.start_redemption_grace_period domain.reload @@ -253,6 +253,9 @@ RSpec.describe Domain do end it 'should set pending delete' do + @domain.nameservers.build(attributes_for(:nameserver)) + @domain.nameservers.build(attributes_for(:nameserver)) + @domain.statuses = DomainStatus::OK # restore @domain.save @domain.pending_delete?.should == false @@ -281,7 +284,7 @@ RSpec.describe Domain do end it 'should add poll message to registrar' do - domain = Fabricate(:domain, name: 'testpollmessage123.ee') + domain = create(:domain, name: 'testpollmessage123.ee') domain.poll_message!(:poll_pending_update_confirmed_by_registrant) domain.registrar.messages.first.body.should == 'Registrant confirmed domain update: testpollmessage123.ee' end @@ -341,13 +344,13 @@ RSpec.describe Domain do it 'should return api_creator when created by api user' do with_versioning do - @user = Fabricate(:admin_user) - @api_user = Fabricate(:api_user) + @user = create(:admin_user) + @api_user = create(:api_user) @user.id.should == 1 @api_user.id.should == 2 ::PaperTrail.whodunnit = '2-ApiUser: testuser' - @domain = Fabricate(:domain) + @domain = create(:domain) @domain.creator_str.should == '2-ApiUser: testuser' @domain.creator.should == @api_user @@ -357,13 +360,13 @@ RSpec.describe Domain do it 'should return api_creator when created by api user' do with_versioning do - @user = Fabricate(:admin_user, id: 1000) - @api_user = Fabricate(:api_user, id: 2000) + @user = create(:admin_user, id: 1000) + @api_user = create(:api_user, id: 2000) @user.id.should == 1000 @api_user.id.should == 2000 ::PaperTrail.whodunnit = '1000-AdminUser: testuser' - @domain = Fabricate(:domain) + @domain = create(:domain) @domain.creator_str.should == '1000-AdminUser: testuser' @domain.creator.should == @user @@ -374,7 +377,7 @@ RSpec.describe Domain do end it 'validates domain name' do - d = Fabricate(:domain) + d = create(:domain) expect(d.name).to_not be_nil invalid = [ @@ -384,7 +387,7 @@ RSpec.describe Domain do ] invalid.each do |x| - expect(Fabricate.build(:domain, name: x).valid?).to be false + expect(build(:domain, name: x).valid?).to be false end valid = [ @@ -393,28 +396,28 @@ RSpec.describe Domain do ] valid.each do |x| - expect(Fabricate.build(:domain, name: x).valid?).to be true + expect(build(:domain, name: x).valid?).to be true end invalid_punycode = ['xn--geaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4we.pri.ee'] invalid_punycode.each do |x| - expect(Fabricate.build(:domain, name: x).valid?).to be false + expect(build(:domain, name: x).valid?).to be false end valid_punycode = ['xn--ge-uia.pri.ee', 'xn--geaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9te.pri.ee'] valid_punycode.each do |x| - expect(Fabricate.build(:domain, name: x).valid?).to be true + expect(build(:domain, name: x).valid?).to be true end end it 'should not create zone origin domain' do - d = Fabricate.build(:domain, name: 'ee') + d = build(:domain, name: 'ee') d.save.should == false expect(d.errors.full_messages).to include('Data management policy violation: Domain name is blocked [name]') - d = Fabricate.build(:domain, name: 'bla') + d = build(:domain, name: 'bla') d.save.should == false expect(d.errors.full_messages).to include('Domain name Domain name is invalid') end @@ -427,13 +430,13 @@ RSpec.describe Domain do end it 'should be valid when name length is exatly 63 in characters' do - d = Fabricate(:domain, name: "#{'a' * 63}.ee") + d = create(:domain, name: "#{'a' * 63}.ee") d.valid? d.errors.full_messages.should == [] end it 'should not be valid when name length is longer than 63 characters' do - d = Fabricate.build(:domain, name: "#{'a' * 64}.ee") + d = build(:domain, name: "#{'a' * 64}.ee") d.valid? d.errors.full_messages.should match_array([ "Domain name Domain name is invalid", @@ -442,7 +445,7 @@ RSpec.describe Domain do end it 'should not be valid when name length is longer than 63 characters' do - d = Fabricate.build(:domain, + d = build(:domain, name: "xn--4caaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.ee") d.valid? d.errors.full_messages.should match_array([ @@ -452,7 +455,7 @@ RSpec.describe Domain do end it 'should be valid when name length is 63 characters' do - d = Fabricate.build(:domain, + d = build(:domain, name: "õäöüšžõäöüšžõäöüšžõäöüšžõäöüšžõäöüšžõäöüšžab123.pri.ee") d.valid? d.errors.full_messages.should match_array([ @@ -460,7 +463,7 @@ RSpec.describe Domain do end it 'should not be valid when name length is longer than 63 punycode characters' do - d = Fabricate.build(:domain, name: "#{'ä' * 63}.ee") + d = build(:domain, name: "#{'ä' * 63}.ee") d.valid? d.errors.full_messages.should == [ "Puny label Domain name is too long (maximum is 63 characters)" @@ -468,7 +471,7 @@ RSpec.describe Domain do end it 'should not be valid when name length is longer than 63 punycode characters' do - d = Fabricate.build(:domain, name: "#{'ä' * 64}.ee") + d = build(:domain, name: "#{'ä' * 64}.ee") d.valid? d.errors.full_messages.should match_array([ "Domain name Domain name is invalid", @@ -477,7 +480,7 @@ RSpec.describe Domain do end it 'should not be valid when name length is longer than 63 punycode characters' do - d = Fabricate.build(:domain, name: "#{'ä' * 63}.pri.ee") + d = build(:domain, name: "#{'ä' * 63}.pri.ee") d.valid? d.errors.full_messages.should match_array([ "Puny label Domain name is too long (maximum is 63 characters)" @@ -485,63 +488,69 @@ RSpec.describe Domain do end it 'should be valid when punycode name length is not longer than 63' do - d = Fabricate.build(:domain, name: "#{'ä' * 53}.pri.ee") + d = build(:domain, name: "#{'ä' * 53}.pri.ee") d.valid? d.errors.full_messages.should == [] end it 'should be valid when punycode name length is not longer than 63' do - d = Fabricate.build(:domain, name: "#{'ä' * 57}.ee") + d = build(:domain, name: "#{'ä' * 57}.ee") d.valid? d.errors.full_messages.should == [] end it 'should not be valid when name length is one pynicode' do - d = Fabricate.build(:domain, name: "xn--4ca.ee") + d = build(:domain, name: "xn--4ca.ee") d.valid? d.errors.full_messages.should == ["Domain name Domain name is invalid"] end it 'should not be valid with at character' do - d = Fabricate.build(:domain, name: 'dass@sf.ee') + d = build(:domain, name: 'dass@sf.ee') d.valid? d.errors.full_messages.should == ["Domain name Domain name is invalid"] end it 'should not be valid with invalid characters' do - d = Fabricate.build(:domain, name: '@ba)s(?ä_:-df.ee') + d = build(:domain, name: '@ba)s(?ä_:-df.ee') d.valid? d.errors.full_messages.should == ["Domain name Domain name is invalid"] end it 'should be valid when name length is two pynicodes' do - d = Fabricate.build(:domain, name: "xn--4caa.ee") + d = build(:domain, name: "xn--4caa.ee") d.valid? d.errors.full_messages.should == [] end it 'should be valid when name length is two pynicodes' do - d = Fabricate.build(:domain, name: "xn--4ca0b.ee") + d = build(:domain, name: "xn--4ca0b.ee") d.valid? d.errors.full_messages.should == [] end it 'does not create a reserved domain' do - Fabricate.create(:reserved_domain, name: 'test.ee') + create(:reserved_domain, name: 'test.ee') - domain = Fabricate.build(:domain, name: 'test.ee') + domain = build(:domain, name: 'test.ee') domain.validate expect(domain.errors[:base]).to include('Required parameter missing; reserved>pw element required for reserved domains') end it 'generates auth info' do - d = Fabricate(:domain) + d = create(:domain) expect(d.auth_info).to_not be_empty end it 'manages statuses automatically' do - d = Fabricate(:domain) + d = build(:domain) + + d.nameservers.build(attributes_for(:nameserver)) + d.nameservers.build(attributes_for(:nameserver)) + + d.save! + expect(d.statuses.count).to eq(1) expect(d.statuses.first).to eq(DomainStatus::OK) @@ -562,28 +571,16 @@ RSpec.describe Domain do end with_versioning do - context 'when not saved' do - it 'does not create domain version' do - Fabricate.build(:domain) - expect(DomainVersion.count).to eq(0) - end - - it 'does not create child versions' do - Fabricate.build(:domain) - expect(ContactVersion.count).to eq(0) - expect(NameserverVersion.count).to eq(0) - end - end - context 'when saved' do before(:each) do - Fabricate(:domain) + domain = create(:domain) + domain.nameservers << create(:nameserver) end it 'creates domain version' do expect(DomainVersion.count).to eq(1) expect(ContactVersion.count).to eq(3) - expect(NameserverVersion.count).to eq(3) + expect(NameserverVersion.count).to eq(2) end end end @@ -672,7 +669,7 @@ RSpec.describe Domain do it 'rejects less than min' do Setting.ns_min_count = 2 - domain.nameservers.build(FactoryGirl.attributes_for(:nameserver)) + domain.nameservers.build(attributes_for(:nameserver)) domain.validate expect(domain.errors).to have_key(:nameservers) end @@ -680,15 +677,15 @@ RSpec.describe Domain do it 'rejects more than max' do Setting.ns_min_count = 1 Setting.ns_max_count = 1 - domain.nameservers.build(FactoryGirl.attributes_for(:nameserver)) - domain.nameservers.build(FactoryGirl.attributes_for(:nameserver)) + domain.nameservers.build(attributes_for(:nameserver)) + domain.nameservers.build(attributes_for(:nameserver)) domain.validate expect(domain.errors).to have_key(:nameservers) end it 'accepts min' do Setting.ns_min_count = 1 - domain.nameservers.build(FactoryGirl.attributes_for(:nameserver)) + domain.nameservers.build(attributes_for(:nameserver)) domain.validate expect(domain.errors).to_not have_key(:nameservers) end @@ -696,8 +693,8 @@ RSpec.describe Domain do it 'accepts max' do Setting.ns_min_count = 1 Setting.ns_max_count = 2 - domain.nameservers.build(FactoryGirl.attributes_for(:nameserver)) - domain.nameservers.build(FactoryGirl.attributes_for(:nameserver)) + domain.nameservers.build(attributes_for(:nameserver)) + domain.nameservers.build(attributes_for(:nameserver)) domain.validate expect(domain.errors).to_not have_key(:nameservers) end @@ -709,7 +706,7 @@ RSpec.describe Domain do it 'rejects less than min' do Setting.ns_min_count = 2 - domain.nameservers.build(FactoryGirl.attributes_for(:nameserver)) + domain.nameservers.build(attributes_for(:nameserver)) domain.validate expect(domain.errors).to have_key(:nameservers) end @@ -867,11 +864,11 @@ RSpec.describe Domain do before :example do travel_to Time.zone.parse('05.07.2010 00:00') - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') - Fabricate.create(:domain, id: 1, outzone_time: Time.zone.parse('04.07.2010 23:59')) - Fabricate.create(:domain, id: 2, outzone_time: Time.zone.parse('05.07.2010 00:00')) - Fabricate.create(:domain, id: 3, outzone_time: Time.zone.parse('05.07.2010 00:01')) + create(:domain, id: 1, outzone_time: Time.zone.parse('04.07.2010 23:59')) + create(:domain, id: 2, outzone_time: Time.zone.parse('05.07.2010 00:00')) + create(:domain, id: 3, outzone_time: Time.zone.parse('05.07.2010 00:01')) end it 'returns domains with outzone time in the past' do @@ -883,11 +880,11 @@ RSpec.describe Domain do before :example do travel_to Time.zone.parse('05.07.2010 00:00') - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') - Fabricate.create(:domain, id: 1, delete_time: Time.zone.parse('04.07.2010 23:59')) - Fabricate.create(:domain, id: 2, delete_time: Time.zone.parse('05.07.2010 00:00')) - Fabricate.create(:domain, id: 3, delete_time: Time.zone.parse('05.07.2010 00:01')) + create(:domain, id: 1, delete_time: Time.zone.parse('04.07.2010 23:59')) + create(:domain, id: 2, delete_time: Time.zone.parse('05.07.2010 00:00')) + create(:domain, id: 3, delete_time: Time.zone.parse('05.07.2010 00:01')) end it 'returns domains with delete time in the past' do diff --git a/spec/models/domain_transfer_spec.rb b/spec/models/domain_transfer_spec.rb index d1ff29eee..5f8bf54a0 100644 --- a/spec/models/domain_transfer_spec.rb +++ b/spec/models/domain_transfer_spec.rb @@ -21,7 +21,7 @@ describe DomainTransfer do Setting.client_side_status_editing_enabled = true - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') end context 'with invalid attribute' do @@ -42,7 +42,7 @@ describe DomainTransfer do context 'with valid attributes' do before :example do - @domain_transfer = Fabricate(:domain_transfer) + @domain_transfer = create(:domain_transfer) end it 'should be valid' do @@ -51,7 +51,7 @@ describe DomainTransfer do end it 'should be valid twice' do - @domain_transfer = Fabricate(:domain_transfer) + @domain_transfer = create(:domain_transfer) @domain_transfer.valid? @domain_transfer.errors.full_messages.should match_array([]) end diff --git a/spec/models/epp_contact_spec.rb b/spec/models/epp_contact_spec.rb index 5f5d2eafa..401a63cc6 100644 --- a/spec/models/epp_contact_spec.rb +++ b/spec/models/epp_contact_spec.rb @@ -2,8 +2,8 @@ require 'rails_helper' describe Epp::Contact, '.check_availability' do before do - Fabricate(:contact, code: 'asd12') - Fabricate(:contact, code: 'asd13') + create(:contact, code: 'asd12') + create(:contact, code: 'asd13') end it 'should return array if argument is string' do diff --git a/spec/models/epp_session.rb b/spec/models/epp_session.rb index 6261e2599..484cd1345 100644 --- a/spec/models/epp_session.rb +++ b/spec/models/epp_session.rb @@ -1,7 +1,7 @@ require 'rails_helper' describe EppSession do - let(:epp_session) { Fabricate(:epp_session) } + let(:epp_session) { create(:epp_session) } it 'has marshalled data' do expect(epp_session.read_attribute(:data)).to_not be_blank diff --git a/spec/models/invoice_spec.rb b/spec/models/invoice_spec.rb index 33bf4fa6e..49d15310f 100644 --- a/spec/models/invoice_spec.rb +++ b/spec/models/invoice_spec.rb @@ -27,7 +27,7 @@ describe Invoice do context 'with valid attributes' do before :all do - @invoice = Fabricate(:invoice) + @invoice = create(:invoice) end it 'should be valid' do @@ -36,24 +36,24 @@ describe Invoice do end it 'should be valid twice' do - @invoice = Fabricate(:invoice) + @invoice = create(:invoice) @invoice.valid? @invoice.errors.full_messages.should match_array([]) end it 'should be valid twice' do - @invoice = Fabricate(:invoice) + @invoice = create(:invoice) @invoice.valid? @invoice.errors.full_messages.should match_array([]) end it 'should return correct addresses' do - @invoice = Fabricate(:invoice) + @invoice = create(:invoice) @invoice.seller_address.should == 'Paldiski mnt. 123, Tallinn' end it 'should calculate sums correctly' do - @invoice = Fabricate(:invoice) + @invoice = create(:invoice) @invoice.vat_prc.should == BigDecimal.new('0.2') @invoice.sum_without_vat.should == BigDecimal.new('300.0') @invoice.vat.should == BigDecimal.new('60.0') @@ -67,7 +67,7 @@ describe Invoice do end it 'should cancel overdue invoices' do - Fabricate(:invoice, created_at: Time.zone.now - 35.days, due_date: Time.zone.now - 30.days) + create(:invoice, created_at: Time.zone.now - 35.days, due_date: Time.zone.now - 30.days) Invoice.cancel_overdue_invoices Invoice.where(cancelled_at: nil).count.should == 1 end diff --git a/spec/models/keyrelay_spec.rb b/spec/models/keyrelay_spec.rb index 319faf87c..5c335941b 100644 --- a/spec/models/keyrelay_spec.rb +++ b/spec/models/keyrelay_spec.rb @@ -21,7 +21,7 @@ describe Keyrelay do Setting.client_side_status_editing_enabled = true - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') end context 'with invalid attribute' do @@ -49,7 +49,7 @@ describe Keyrelay do context 'with valid attributes' do before :example do - @keyrelay = Fabricate(:keyrelay) + @keyrelay = create(:keyrelay) end it 'should be valid' do @@ -58,7 +58,7 @@ describe Keyrelay do end it 'should be valid twice' do - @keyrelay = Fabricate(:keyrelay) + @keyrelay = create(:keyrelay) @keyrelay.valid? @keyrelay.errors.full_messages.should match_array([]) end @@ -79,12 +79,12 @@ describe Keyrelay do end it 'is in expired status' do - kr = Fabricate(:keyrelay, pa_date: Time.zone.now - 2.weeks) + kr = create(:keyrelay, pa_date: Time.zone.now - 2.weeks) expect(kr.status).to eq('expired') end it 'does not accept invalid relative expiry' do - kr = Fabricate.build(:keyrelay, expiry_relative: 'adf') + kr = build(:keyrelay, expiry_relative: 'adf') expect(kr.save).to eq(false) expect(kr.errors[:expiry_relative].first).to eq('Expiry relative must be compatible to ISO 8601') end diff --git a/spec/models/legal_document_spec.rb b/spec/models/legal_document_spec.rb index e87a3b77a..03c83bc89 100644 --- a/spec/models/legal_document_spec.rb +++ b/spec/models/legal_document_spec.rb @@ -3,16 +3,16 @@ require 'rails_helper' describe LegalDocument do context 'tasks' do it 'make files uniq' do - Fabricate(:zone, origin: 'ee') - Fabricate(:zone, origin: 'pri.ee') - Fabricate(:zone, origin: 'med.ee') - Fabricate(:zone, origin: 'fie.ee') - Fabricate(:zone, origin: 'com.ee') + create(:zone, origin: 'ee') + create(:zone, origin: 'pri.ee') + create(:zone, origin: 'med.ee') + create(:zone, origin: 'fie.ee') + create(:zone, origin: 'com.ee') LegalDocument.explicitly_write_file = true PaperTrail.enabled = true - domain = Fabricate(:domain) - domain2 = Fabricate(:domain) + domain = create(:domain) + domain2 = create(:domain) legals = [] legals << original = domain.legal_documents.create!(body: Base64.encode64('S' * 4.kilobytes)) legals << copy = domain.legal_documents.create!(body: Base64.encode64('S' * 4.kilobytes)) diff --git a/spec/models/message_spec.rb b/spec/models/message_spec.rb index ddbea285b..a71988701 100644 --- a/spec/models/message_spec.rb +++ b/spec/models/message_spec.rb @@ -20,7 +20,7 @@ describe Message do context 'with valid attributes' do before :all do - @mssage = Fabricate(:message) + @mssage = create(:message) end it 'should be valid' do @@ -29,7 +29,7 @@ describe Message do end it 'should be valid twice' do - @mssage = Fabricate(:message) + @mssage = create(:message) @mssage.valid? @mssage.errors.full_messages.should match_array([]) end diff --git a/spec/models/nameserver_spec.rb b/spec/models/nameserver_spec.rb index 494d5696b..b7cd7a6be 100644 --- a/spec/models/nameserver_spec.rb +++ b/spec/models/nameserver_spec.rb @@ -21,7 +21,7 @@ describe Nameserver do Setting.client_side_status_editing_enabled = true - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') end context 'with invalid attribute' do @@ -36,7 +36,7 @@ describe Nameserver do context 'with valid attributes' do before :example do - @nameserver = Fabricate(:nameserver) + @nameserver = create(:nameserver) end it 'should be valid' do @@ -45,7 +45,7 @@ describe Nameserver do end it 'should be valid twice' do - @nameserver = Fabricate(:nameserver) + @nameserver = create(:nameserver) @nameserver.valid? @nameserver.errors.full_messages.should match_array([]) end @@ -62,23 +62,23 @@ describe Nameserver do context 'with many nameservers' do before :example do - @api_user = Fabricate(:api_user) - @domain_1 = Fabricate(:domain, nameservers: [ - Fabricate(:nameserver, hostname: 'ns1.ns.ee'), - Fabricate(:nameserver, hostname: 'ns2.ns.ee'), - Fabricate(:nameserver, hostname: 'ns2.test.ee') + @api_user = create(:api_user) + @domain_1 = create(:domain, nameservers: [ + create(:nameserver, hostname: 'ns1.ns.ee'), + create(:nameserver, hostname: 'ns2.ns.ee'), + create(:nameserver, hostname: 'ns2.test.ee') ], registrar: @api_user.registrar) - @domain_2 = Fabricate(:domain, nameservers: [ - Fabricate(:nameserver, hostname: 'ns1.ns.ee'), - Fabricate(:nameserver, hostname: 'ns2.ns.ee'), - Fabricate(:nameserver, hostname: 'ns3.test.ee') + @domain_2 = create(:domain, nameservers: [ + create(:nameserver, hostname: 'ns1.ns.ee'), + create(:nameserver, hostname: 'ns2.ns.ee'), + create(:nameserver, hostname: 'ns3.test.ee') ], registrar: @api_user.registrar) - @domain_3 = Fabricate(:domain, nameservers: [ - Fabricate(:nameserver, hostname: 'ns1.ns.ee'), - Fabricate(:nameserver, hostname: 'ns2.ns.ee'), - Fabricate(:nameserver, hostname: 'ns3.test.ee') + @domain_3 = create(:domain, nameservers: [ + create(:nameserver, hostname: 'ns1.ns.ee'), + create(:nameserver, hostname: 'ns2.ns.ee'), + create(:nameserver, hostname: 'ns3.test.ee') ]) end diff --git a/spec/models/registrant_verification_spec.rb b/spec/models/registrant_verification_spec.rb index 13036ef21..6438fda84 100644 --- a/spec/models/registrant_verification_spec.rb +++ b/spec/models/registrant_verification_spec.rb @@ -21,7 +21,7 @@ describe RegistrantVerification do Setting.client_side_status_editing_enabled = true - Fabricate(:zone, origin: 'ee') + create(:zone, origin: 'ee') end context 'with invalid attribute' do before :example do @@ -42,7 +42,7 @@ describe RegistrantVerification do context 'with valid attributes' do before :example do - @registrant_verification = Fabricate(:registrant_verification) + @registrant_verification = create(:registrant_verification) end it 'should be valid' do @@ -51,7 +51,7 @@ describe RegistrantVerification do end it 'should be valid twice' do - @registrant_verification = Fabricate(:registrant_verification) + @registrant_verification = create(:registrant_verification) @registrant_verification.valid? @registrant_verification.errors.full_messages.should match_array([]) end diff --git a/spec/models/registrar_spec.rb b/spec/models/registrar_spec.rb index 45acfdab1..4a8110d45 100644 --- a/spec/models/registrar_spec.rb +++ b/spec/models/registrar_spec.rb @@ -8,7 +8,7 @@ describe Registrar do it 'is not valid' do @registrar.valid? - @registrar.errors.full_messages.should match_array([ + @registrar.errors.full_messages.should include(*[ 'Contact e-mail is missing', 'Country code is missing', 'Name is missing', @@ -39,7 +39,7 @@ describe Registrar do context 'with valid attributes' do before :all do - @registrar = Fabricate(:registrar) + @registrar = create(:registrar) end it 'should be valid' do @@ -48,13 +48,13 @@ describe Registrar do end it 'should be valid twice' do - @registrar = Fabricate(:registrar) + @registrar = create(:registrar) @registrar.valid? @registrar.errors.full_messages.should match_array([]) end it 'should remove blank from code' do - registrar = Fabricate.build(:registrar, code: 'with blank') + registrar = build(:registrar, code: 'with blank') registrar.valid? registrar.errors.full_messages.should match_array([ ]) @@ -62,7 +62,7 @@ describe Registrar do end it 'should remove colon from code' do - registrar = Fabricate.build(:registrar, code: 'with colon:and:blank') + registrar = build(:registrar, code: 'with colon:and:blank') registrar.valid? registrar.errors.full_messages.should match_array([ ]) @@ -70,7 +70,7 @@ describe Registrar do end it 'should allow dot in code' do - registrar = Fabricate.build(:registrar, code: 'with.dot') + registrar = build(:registrar, code: 'with.dot') registrar.valid? registrar.errors.full_messages.should match_array([ ]) @@ -88,21 +88,19 @@ describe Registrar do end it 'should return full address' do - @registrar.address.should == 'Street 999, Town, County, Postal' - end - - it 'should have code' do - @registrar.code.should =~ /REGISTRAR/ + registrar = described_class.new(street: 'Street 999', city: 'Town', state: 'County', zip: 'Postal') + registrar.address.should == 'Street 999, Town, County, Postal' end it 'should not be able to change code' do - @registrar.code = 'not-updated' - @registrar.code.should =~ /REGISTRAR/ + registrar = create(:registrar, code: 'TEST') + registrar.code = 'new-code' + expect(registrar.code).to eq('TEST') end it 'should be able to issue a prepayment invoice' do Setting.days_to_keep_invoices_active = 30 - Fabricate(:registrar, name: 'EIS', reg_no: '90010019') + create(:registrar, name: 'EIS', reg_no: '90010019') @registrar.issue_prepayment_invoice(200, 'add some money') @registrar.invoices.count.should == 1 i = @registrar.invoices.first @@ -112,7 +110,7 @@ describe Registrar do end it 'should not allaw to use CID as code for leagcy reasons' do - registrar = Fabricate.build(:registrar, code: 'CID') + registrar = build(:registrar, code: 'CID') registrar.valid? registrar.errors.full_messages.should == ['Code is forbidden to use'] end diff --git a/spec/models/whois_record_spec.rb b/spec/models/whois_record_spec.rb index 0f404a4de..c1fba57f9 100644 --- a/spec/models/whois_record_spec.rb +++ b/spec/models/whois_record_spec.rb @@ -2,8 +2,8 @@ require 'rails_helper' RSpec.describe WhoisRecord do describe '::generate_json', db: false do - let(:registrant) { FactoryGirl.build_stubbed(:registrant) } - let(:domain) { FactoryGirl.build_stubbed(:domain, registrant: registrant) } + let(:registrant) { build_stubbed(:registrant) } + let(:domain) { build_stubbed(:domain, registrant: registrant) } let(:whois_record) { described_class.new } subject(:generated_json) { whois_record.generate_json } @@ -24,7 +24,7 @@ RSpec.describe WhoisRecord do end context 'when registrant is legal entity' do - let(:registrant) { FactoryGirl.build_stubbed(:registrant_legal_entity) } + let(:registrant) { build_stubbed(:registrant_legal_entity) } it 'is present' do expect(reg_no).to eq('test reg no') @@ -32,7 +32,7 @@ RSpec.describe WhoisRecord do end context 'when registrant is private entity' do - let(:registrant) { FactoryGirl.build_stubbed(:registrant_private_entity) } + let(:registrant) { build_stubbed(:registrant_private_entity) } it 'is absent' do expect(reg_no).to be_nil @@ -48,7 +48,7 @@ RSpec.describe WhoisRecord do end context 'when registrant is legal entity' do - let(:registrant) { FactoryGirl.build_stubbed(:registrant_legal_entity) } + let(:registrant) { build_stubbed(:registrant_legal_entity) } it 'is present' do expect(country_code).to eq('test country code') @@ -56,7 +56,7 @@ RSpec.describe WhoisRecord do end context 'when registrant is private entity' do - let(:registrant) { FactoryGirl.build_stubbed(:registrant_private_entity) } + let(:registrant) { build_stubbed(:registrant_private_entity) } it 'is absent' do expect(country_code).to be_nil diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index 2fdd6a8e8..f4dcd9cb3 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -14,7 +14,7 @@ require 'support/matchers/epp/have_result' require 'support/capybara' require 'support/devise' -require 'support/factory_girl' +require 'support/factory_bot' require 'support/database_cleaner' require 'support/paper_trail' require 'support/settings' diff --git a/spec/requests/epp/contact/info_spec.rb b/spec/requests/epp/contact/info_spec.rb index d37ac8e5f..d97a0373e 100644 --- a/spec/requests/epp/contact/info_spec.rb +++ b/spec/requests/epp/contact/info_spec.rb @@ -20,7 +20,7 @@ RSpec.describe 'EPP contact:update' do before do sign_in_to_epp_area - FactoryGirl.create(:contact, code: 'TEST') + create(:contact, code: 'TEST') end context 'when address processing is enabled' do diff --git a/spec/requests/epp/contact/update_spec.rb b/spec/requests/epp/contact/update_spec.rb index cd596dd85..a8be4c85d 100644 --- a/spec/requests/epp/contact/update_spec.rb +++ b/spec/requests/epp/contact/update_spec.rb @@ -34,7 +34,7 @@ RSpec.describe 'EPP contact:update' do before do sign_in_to_epp_area - FactoryGirl.create(:contact, code: 'TEST') + create(:contact, code: 'TEST') end context 'when address processing is enabled' do diff --git a/spec/support/factory_bot.rb b/spec/support/factory_bot.rb new file mode 100644 index 000000000..c7890e49c --- /dev/null +++ b/spec/support/factory_bot.rb @@ -0,0 +1,3 @@ +RSpec.configure do |config| + config.include FactoryBot::Syntax::Methods +end diff --git a/spec/support/factory_girl.rb b/spec/support/factory_girl.rb deleted file mode 100644 index eec437fb3..000000000 --- a/spec/support/factory_girl.rb +++ /dev/null @@ -1,3 +0,0 @@ -RSpec.configure do |config| - config.include FactoryGirl::Syntax::Methods -end diff --git a/spec/support/features/session_helpers.rb b/spec/support/features/session_helpers.rb index a3ea7c2ae..e274d0e48 100644 --- a/spec/support/features/session_helpers.rb +++ b/spec/support/features/session_helpers.rb @@ -1,6 +1,6 @@ module Features module SessionHelpers - def sign_in_to_admin_area(user: FactoryGirl.create(:admin_user)) + def sign_in_to_admin_area(user: create(:admin_user)) visit admin_login_url fill_in 'admin_user[username]', with: user.username @@ -9,7 +9,7 @@ module Features click_button 'Log in' end - def sign_in_to_registrar_area(user: FactoryGirl.create(:api_user)) + def sign_in_to_registrar_area(user: create(:api_user)) visit registrar_login_url fill_in 'depp_user_tag', with: user.username diff --git a/spec/support/requests/session_helpers.rb b/spec/support/requests/session_helpers.rb index c58741946..0345959e2 100644 --- a/spec/support/requests/session_helpers.rb +++ b/spec/support/requests/session_helpers.rb @@ -1,6 +1,6 @@ module Requests module SessionHelpers - def sign_in_to_epp_area(user: FactoryGirl.create(:api_user_epp)) + def sign_in_to_epp_area(user: create(:api_user_epp)) login_xml = " @@ -29,11 +29,11 @@ module Requests post '/epp/session/login', frame: login_xml end - def sign_in_to_admin_area(user: FactoryGirl.create(:admin_user)) + def sign_in_to_admin_area(user: create(:admin_user)) post admin_sessions_path, admin_user: { username: user.username, password: user.password } end - def sign_in_to_registrar_area(user: FactoryGirl.create(:api_user)) + def sign_in_to_registrar_area(user: create(:api_user)) post registrar_sessions_path, { depp_user: { tag: user.username, password: user.password } } end end diff --git a/spec/support/settings.rb b/spec/support/settings.rb index bf7fbc5d5..e39fea035 100644 --- a/spec/support/settings.rb +++ b/spec/support/settings.rb @@ -1,7 +1,7 @@ RSpec.configure do |config| config.before :example do |example| if example.metadata[:db] && (example.metadata[:settings] != false) - Fabricate(:zone, origin: 'com') + create(:zone, origin: 'com') Setting.ds_algorithm = 2 Setting.ds_data_allowed = true