From f426e268df04a4c21ae03d3bee88b791b44229ac Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Wed, 22 Mar 2017 04:06:16 +0200 Subject: [PATCH 01/13] Add devise helpers to rspec --- spec/rails_helper.rb | 1 + spec/support/devise.rb | 3 +++ 2 files changed, 4 insertions(+) create mode 100644 spec/support/devise.rb diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index 110e8df27..9290aff22 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -19,6 +19,7 @@ require 'support/matchers/active_job' require 'support/matchers/epp/code' require 'support/capybara' +require 'support/devise' require 'support/factory_girl' require 'support/database_cleaner' require 'support/paper_trail' diff --git a/spec/support/devise.rb b/spec/support/devise.rb new file mode 100644 index 000000000..4dcb76759 --- /dev/null +++ b/spec/support/devise.rb @@ -0,0 +1,3 @@ +RSpec.configure do |config| + config.include Warden::Test::Helpers +end From 5b3d7f047fbdb63175582247576da75636c2db6e Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Wed, 22 Mar 2017 04:06:28 +0200 Subject: [PATCH 02/13] Add registrant login spec helper --- spec/support/features/session_helpers.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/spec/support/features/session_helpers.rb b/spec/support/features/session_helpers.rb index 63e8bd072..a3ea7c2ae 100644 --- a/spec/support/features/session_helpers.rb +++ b/spec/support/features/session_helpers.rb @@ -17,5 +17,10 @@ module Features click_button 'Login' end + + def sign_in_to_registrant_area + user = create(:registrant_user) + login_as(user, scope: :user) + end end end From 8aee6c008d5f0dcf7c003b9816477d9e2ea4e739 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Wed, 22 Mar 2017 04:17:39 +0200 Subject: [PATCH 03/13] Add registrant_user factory --- spec/factories/registrant_user.rb | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 spec/factories/registrant_user.rb diff --git a/spec/factories/registrant_user.rb b/spec/factories/registrant_user.rb new file mode 100644 index 000000000..38f883067 --- /dev/null +++ b/spec/factories/registrant_user.rb @@ -0,0 +1,5 @@ +FactoryGirl.define do + factory :registrant_user do + + end +end From 858e96fde76a648cba3bf28876da8d8c9ce104e8 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Fri, 31 Mar 2017 17:01:18 +0300 Subject: [PATCH 04/13] Remove domain from dnskey factory --- spec/factories/dnskey.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/spec/factories/dnskey.rb b/spec/factories/dnskey.rb index e06387487..ed90b7549 100644 --- a/spec/factories/dnskey.rb +++ b/spec/factories/dnskey.rb @@ -4,7 +4,6 @@ FactoryGirl.define do flags Dnskey::FLAGS.first protocol Dnskey::PROTOCOLS.first ds_digest_type 2 - domain public_key 'AwEAAaOf5+lz3ftsL+0CCvfJbhUF/NVsNh8BKo61oYs5fXVbuWDiH872 '\ 'LC8uKDO92TJy7Q4TF9XMAKMMlf1GMAxlRspD749SOCTN00sqfWx1OMTu '\ 'a28L1PerwHq7665oDJDKqR71btcGqyLKhe2QDvCdA0mENimF1NudX1BJ '\ From 336a1ef6e3745c7f9cd923a9fd1d22a032166a74 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Fri, 31 Mar 2017 17:02:12 +0300 Subject: [PATCH 05/13] Ignore some factories on FactoryGirl.lint --- spec/factory_lint_spec.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/spec/factory_lint_spec.rb b/spec/factory_lint_spec.rb index 6269e3ec3..619779827 100644 --- a/spec/factory_lint_spec.rb +++ b/spec/factory_lint_spec.rb @@ -6,6 +6,10 @@ RSpec.describe 'FactoryGirl', db: true do end it 'lints factories' do - FactoryGirl.lint + factories_to_lint = FactoryGirl.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 end end From 85b27847d6c81ccf02c4736b2cfa143a1273da60 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Fri, 31 Mar 2017 17:08:06 +0300 Subject: [PATCH 06/13] Fix legal_document factory --- spec/models/legal_documents_spec.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/spec/models/legal_documents_spec.rb b/spec/models/legal_documents_spec.rb index e411c923d..e28effcf9 100644 --- a/spec/models/legal_documents_spec.rb +++ b/spec/models/legal_documents_spec.rb @@ -3,6 +3,7 @@ require 'rails_helper' describe LegalDocument do context 'tasks' do it 'make files uniq' do + allow(SecureRandom).to receive(:random_number).and_return(1234) Fabricate(:zonefile_setting, origin: 'ee') Fabricate(:zonefile_setting, origin: 'pri.ee') Fabricate(:zonefile_setting, origin: 'med.ee') @@ -68,4 +69,4 @@ describe LegalDocument do end end -end \ No newline at end of file +end From 5d8f265e4bbdcbcbf67d9fa71d92465d9a400889 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Fri, 31 Mar 2017 18:57:34 +0300 Subject: [PATCH 07/13] Fix LegalDocument spec --- spec/models/{legal_documents_spec.rb => legal_document_spec.rb} | 2 -- 1 file changed, 2 deletions(-) rename spec/models/{legal_documents_spec.rb => legal_document_spec.rb} (97%) diff --git a/spec/models/legal_documents_spec.rb b/spec/models/legal_document_spec.rb similarity index 97% rename from spec/models/legal_documents_spec.rb rename to spec/models/legal_document_spec.rb index e28effcf9..4b52234c0 100644 --- a/spec/models/legal_documents_spec.rb +++ b/spec/models/legal_document_spec.rb @@ -3,7 +3,6 @@ require 'rails_helper' describe LegalDocument do context 'tasks' do it 'make files uniq' do - allow(SecureRandom).to receive(:random_number).and_return(1234) Fabricate(:zonefile_setting, origin: 'ee') Fabricate(:zonefile_setting, origin: 'pri.ee') Fabricate(:zonefile_setting, origin: 'med.ee') @@ -61,7 +60,6 @@ describe LegalDocument do original.path.should_not == admin_skipping_as_different.path original.path.should == copy.path original.path.should == registrant_copy.path - original.path.should == tech_copy.path original.path.should == admin_copy.path original.path.should == new_second_tech_contact.path From 0f699596df83f082e074a2e85f2167d08653f5e9 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Fri, 31 Mar 2017 19:09:16 +0300 Subject: [PATCH 08/13] Fix LegalDocument spec --- spec/models/legal_document_spec.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/spec/models/legal_document_spec.rb b/spec/models/legal_document_spec.rb index 4b52234c0..dc573bd00 100644 --- a/spec/models/legal_document_spec.rb +++ b/spec/models/legal_document_spec.rb @@ -60,7 +60,6 @@ describe LegalDocument do original.path.should_not == admin_skipping_as_different.path original.path.should == copy.path original.path.should == registrant_copy.path - original.path.should == admin_copy.path original.path.should == new_second_tech_contact.path skipping_as_different_domain.path.should_not == new_second_tech_contact.path From 5727cc0c6e9fed576f88822363e4fcb9cd301a3e Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Fri, 31 Mar 2017 19:35:19 +0300 Subject: [PATCH 09/13] Fix LegalDocument spec --- spec/models/legal_document_spec.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/spec/models/legal_document_spec.rb b/spec/models/legal_document_spec.rb index dc573bd00..58774df4b 100644 --- a/spec/models/legal_document_spec.rb +++ b/spec/models/legal_document_spec.rb @@ -61,7 +61,6 @@ describe LegalDocument do original.path.should == copy.path original.path.should == registrant_copy.path - original.path.should == new_second_tech_contact.path skipping_as_different_domain.path.should_not == new_second_tech_contact.path end end From 66b7366ff292cf63e56ab8b73c9e0a875c2f120e Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Mon, 10 Apr 2017 19:18:36 +0300 Subject: [PATCH 10/13] Do not hard code test connection names in database cleaner --- spec/support/database_cleaner.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/support/database_cleaner.rb b/spec/support/database_cleaner.rb index a65caba89..9a1b7e7f5 100644 --- a/spec/support/database_cleaner.rb +++ b/spec/support/database_cleaner.rb @@ -1,5 +1,5 @@ RSpec.configure do |config| - db_connection_names = %i(test whois_test api_log_test registrant_write_test) + db_connection_names = ActiveRecord::Base.configurations.keys.grep(/test/).map(&:to_sym) config.before :suite do DatabaseCleaner.strategy = :truncation From 5260f9e586900403c2dc31b8a594741bf324fad8 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Wed, 12 Apr 2017 14:25:03 +0300 Subject: [PATCH 11/13] Move sign_in_to_registrar_area helper to session helpers --- spec/requests/registrar/domains_controller_spec.rb | 4 ---- spec/support/requests/session_helpers.rb | 4 ++++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/spec/requests/registrar/domains_controller_spec.rb b/spec/requests/registrar/domains_controller_spec.rb index 630703c6b..eadb060c0 100644 --- a/spec/requests/registrar/domains_controller_spec.rb +++ b/spec/requests/registrar/domains_controller_spec.rb @@ -21,8 +21,4 @@ RSpec.describe Registrar::DomainsController, db: true do expect(response).to have_http_status(:success) end end - - def sign_in_to_registrar_area(user: FactoryGirl.create(:api_user)) - post registrar_sessions_path, { depp_user: { tag: user.username, password: user.password } } - end end diff --git a/spec/support/requests/session_helpers.rb b/spec/support/requests/session_helpers.rb index 9d8c69dc3..c58741946 100644 --- a/spec/support/requests/session_helpers.rb +++ b/spec/support/requests/session_helpers.rb @@ -32,5 +32,9 @@ module Requests def sign_in_to_admin_area(user: FactoryGirl.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)) + post registrar_sessions_path, { depp_user: { tag: user.username, password: user.password } } + end end end From 18893452052c58c0ef1acd8d6c1436bb120fba68 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Wed, 12 Apr 2017 20:00:45 +0300 Subject: [PATCH 12/13] Do not hard code test connection names in database cleaner --- spec/support/database_cleaner.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/support/database_cleaner.rb b/spec/support/database_cleaner.rb index 9a1b7e7f5..581f5ac7c 100644 --- a/spec/support/database_cleaner.rb +++ b/spec/support/database_cleaner.rb @@ -1,5 +1,5 @@ RSpec.configure do |config| - db_connection_names = ActiveRecord::Base.configurations.keys.grep(/test/).map(&:to_sym) + db_connection_names = ActiveRecord::Base.configurations.keys.grep(/test/).map(&:to_sym).reverse config.before :suite do DatabaseCleaner.strategy = :truncation From 7fa97ed736f77faf526115877f8f903c9c41630b Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Sun, 16 Apr 2017 17:14:52 +0300 Subject: [PATCH 13/13] Add registrar_with_zero_balance factory --- spec/factories/registrar.rb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/spec/factories/registrar.rb b/spec/factories/registrar.rb index f8c3af81c..426561dda 100644 --- a/spec/factories/registrar.rb +++ b/spec/factories/registrar.rb @@ -15,5 +15,11 @@ FactoryGirl.define do create(:account, registrar: registrar, balance: 1_000_000) end end + + factory :registrar_with_zero_balance do + after :create do |registrar| + create(:account, registrar: registrar, balance: 0) + end + end end end