1
0
mirror of https://github.com/mastodon/mastodon synced 2024-12-13 06:08:23 +09:00
mastodon/spec/spec_helper.rb
Eugen Rochko cb5b5cb5f7
Slightly reduce RAM usage (#7301)
* No need to re-require sidekiq plugins, they are required via Gemfile

* Add derailed_benchmarks tool, no need to require TTY gems in Gemfile

* Replace ruby-oembed with FetchOEmbedService

Reduce startup by 45382 allocated objects

* Remove preloaded JSON-LD in favour of caching HTTP responses

Reduce boot RAM by about 6 MiB

* Fix tests

* Fix test suite by stubbing out JSON-LD contexts
2018-05-02 18:58:48 +02:00

65 lines
1.2 KiB
Ruby

#require 'rspec/retry'
require 'simplecov'
GC.disable
SimpleCov.start 'rails' do
add_group 'Services', 'app/services'
add_group 'Presenters', 'app/presenters'
add_group 'Validators', 'app/validators'
end
gc_counter = -1
RSpec.configure do |config|
#config.verbose_retry = true
#config.display_try_failure_messages = true
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.around :each do |ex|
# ex.run_with_retry retry: 3
#end
config.before :suite do
Chewy.strategy(:bypass)
end
config.after :suite do
gc_counter = 0
FileUtils.rm_rf(Dir["#{Rails.root}/spec/test_files/"])
end
config.after :each do
gc_counter += 1
if gc_counter > 19
GC.enable
GC.start
GC.disable
gc_counter = 0
end
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