Sha256: fd4680983a28de2b8db1799699e91039baeadb45a92610d21378e2cc2a14feef

Contents?: true

Size: 1.31 KB

Versions: 9

Compression:

Stored size: 1.31 KB

Contents

require 'rubygems'
require 'bundler'
require 'timeout'

Bundler.setup :test

$LOAD_PATH.unshift(File.dirname(__FILE__))
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))

require 'algoliasearch-rails'
require 'rspec'
require 'rails/all'

raise "missing ALGOLIA_APPLICATION_ID or ALGOLIA_API_KEY environment variables" if ENV['ALGOLIA_APPLICATION_ID'].nil? || ENV['ALGOLIA_API_KEY'].nil?

Thread.current[:algolia_hosts] = nil

RSpec.configure do |c|
  c.mock_with :rspec
  c.filter_run :focus => true
  c.run_all_when_everything_filtered = true
  c.formatter = 'documentation'

  c.around(:each) do |example|
    Timeout::timeout(120) {
      example.run
    }
  end

  # Remove all indexes setup in this run in local or CI
  c.after(:suite) do
    safe_index_list.each do |index|
      Algolia.client.delete_index!(index['name'])
    end
  end
end

# A unique prefix for your test run in local or CI
SAFE_INDEX_PREFIX = "rails_#{SecureRandom.hex(8)}".freeze

# avoid concurrent access to the same index in local or CI
def safe_index_name(name)
  "#{SAFE_INDEX_PREFIX}_#{name}"
end

# get a list of safe indexes in local or CI
def safe_index_list
  list = Algolia.client.list_indexes()['items']
  list = list.select { |index| index["name"].include?(SAFE_INDEX_PREFIX) }
  list.sort_by { |index| index["primary"] || "" }
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
algoliasearch-rails-1.26.0 spec/spec_helper.rb
algoliasearch-rails-1.25.0 spec/spec_helper.rb
algoliasearch-rails-1.24.1 spec/spec_helper.rb
algoliasearch-rails-1.24.0 spec/spec_helper.rb
algoliasearch-rails-1.23.2 spec/spec_helper.rb
algoliasearch-rails-1.23.1 spec/spec_helper.rb
algoliasearch-rails-1.23.0 spec/spec_helper.rb
algoliasearch-rails-1.22.0 spec/spec_helper.rb
algoliasearch-rails-1.21.0 spec/spec_helper.rb