2018-10-08 17:44:25 -04:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2018-02-08 12:01:46 -05:00
|
|
|
# Configure Rails Environment
|
|
|
|
ENV["RAILS_ENV"] = "test"
|
|
|
|
|
|
|
|
require_relative "../test/dummy/config/environment"
|
|
|
|
ActiveRecord::Migrator.migrations_paths = [File.expand_path("../test/dummy/db/migrate", __dir__)]
|
|
|
|
require "rails/test_help"
|
|
|
|
|
|
|
|
require "rails/test_unit/reporter"
|
2019-01-04 19:43:11 -05:00
|
|
|
Rails::TestUnitReporter.executable = "bin/test"
|
2018-02-08 12:01:46 -05:00
|
|
|
|
2019-02-24 00:01:52 -05:00
|
|
|
# Disable available locale checks to allow to add locale after initialized.
|
|
|
|
I18n.enforce_available_locales = false
|
|
|
|
|
2018-02-08 12:01:46 -05:00
|
|
|
# Load fixtures from the engine
|
|
|
|
if ActiveSupport::TestCase.respond_to?(:fixture_path=)
|
|
|
|
ActiveSupport::TestCase.fixture_path = File.expand_path("fixtures", __dir__)
|
|
|
|
ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
|
|
|
|
ActiveSupport::TestCase.file_fixture_path = ActiveSupport::TestCase.fixture_path + "/files"
|
|
|
|
ActiveSupport::TestCase.fixtures :all
|
|
|
|
end
|
2018-07-31 20:49:35 -04:00
|
|
|
|
|
|
|
class ActiveSupport::TestCase
|
2021-06-17 13:35:25 -04:00
|
|
|
def assert_queries(expected_count)
|
|
|
|
ActiveRecord::Base.connection.materialize_transactions
|
|
|
|
|
|
|
|
queries = []
|
|
|
|
ActiveSupport::Notifications.subscribe("sql.active_record") do |*, payload|
|
|
|
|
queries << payload[:sql] unless %w[ SCHEMA TRANSACTION ].include?(payload[:name])
|
|
|
|
end
|
|
|
|
|
|
|
|
yield.tap do
|
|
|
|
assert_equal expected_count, queries.size, "#{queries.size} instead of #{expected_count} queries were executed. #{queries.inspect}"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def assert_no_queries(&block)
|
|
|
|
assert_queries(0, &block)
|
|
|
|
end
|
2020-11-24 12:19:46 -05:00
|
|
|
|
2018-07-31 20:49:35 -04:00
|
|
|
private
|
|
|
|
def create_file_blob(filename:, content_type:, metadata: nil)
|
2019-09-24 07:32:59 -04:00
|
|
|
ActiveStorage::Blob.create_and_upload! io: file_fixture(filename).open, filename: filename, content_type: content_type, metadata: metadata
|
2018-07-31 20:49:35 -04:00
|
|
|
end
|
|
|
|
end
|
2019-03-24 13:59:28 -04:00
|
|
|
|
2021-02-23 13:02:10 -05:00
|
|
|
# Encryption
|
|
|
|
ActiveRecord::Encryption.configure \
|
2021-03-19 05:31:37 -04:00
|
|
|
primary_key: "test master key",
|
2021-02-23 13:02:10 -05:00
|
|
|
deterministic_key: "test deterministic key",
|
|
|
|
key_derivation_salt: "testing key derivation salt",
|
|
|
|
support_unencrypted_data: true
|
|
|
|
|
2019-03-24 13:59:28 -04:00
|
|
|
require_relative "../../tools/test_common"
|