55 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
# frozen_string_literal: true
 | 
						|
 | 
						|
if ENV['DISABLE_SIMPLECOV'] != 'true'
 | 
						|
  require 'simplecov'
 | 
						|
  SimpleCov.start 'rails' do
 | 
						|
    add_filter 'lib/linter'
 | 
						|
    add_group 'Policies', 'app/policies'
 | 
						|
    add_group 'Presenters', 'app/presenters'
 | 
						|
    add_group 'Serializers', 'app/serializers'
 | 
						|
    add_group 'Services', 'app/services'
 | 
						|
    add_group 'Validators', 'app/validators'
 | 
						|
  end
 | 
						|
end
 | 
						|
 | 
						|
RSpec.configure do |config|
 | 
						|
  config.example_status_persistence_file_path = 'tmp/rspec/examples.txt'
 | 
						|
  config.expect_with :rspec do |expectations|
 | 
						|
    expectations.include_chain_clauses_in_custom_matcher_descriptions = true
 | 
						|
  end
 | 
						|
 | 
						|
  config.mock_with :rspec do |mocks|
 | 
						|
    mocks.verify_partial_doubles = true
 | 
						|
 | 
						|
    config.around(:example, :without_verify_partial_doubles) do |example|
 | 
						|
      mocks.verify_partial_doubles = false
 | 
						|
      example.call
 | 
						|
      mocks.verify_partial_doubles = true
 | 
						|
    end
 | 
						|
  end
 | 
						|
 | 
						|
  config.before :suite do
 | 
						|
    Rails.application.load_seed
 | 
						|
    Chewy.strategy(:bypass)
 | 
						|
  end
 | 
						|
 | 
						|
  config.after :suite do
 | 
						|
    FileUtils.rm_rf(Dir[Rails.root.join('spec', 'test_files')])
 | 
						|
  end
 | 
						|
end
 | 
						|
 | 
						|
def body_as_json
 | 
						|
  json_str_to_hash(response.body)
 | 
						|
end
 | 
						|
 | 
						|
def json_str_to_hash(str)
 | 
						|
  JSON.parse(str, symbolize_names: true)
 | 
						|
end
 | 
						|
 | 
						|
def expect_push_bulk_to_match(klass, matcher)
 | 
						|
  expect(Sidekiq::Client).to receive(:push_bulk).with(hash_including({
 | 
						|
    'class' => klass,
 | 
						|
    'args' => matcher,
 | 
						|
  }))
 | 
						|
end
 |