diff --git a/spec/singed_spec.rb b/spec/singed_spec.rb index 700bb6b..37db1bc 100644 --- a/spec/singed_spec.rb +++ b/spec/singed_spec.rb @@ -1,19 +1,12 @@ # frozen_string_literal: true -require "tempfile" - RSpec.describe Singed do around do |example| - original_output_directory = Singed.output_directory - Singed.output_directory = Dir.mktmpdir("singed-spec") original_enabled = Singed.enabled? - begin - example.run - ensure - Singed.output_directory = original_output_directory - Singed.enabled = original_enabled - Singed.instance_variable_set(:@current_flamegraph, nil) - end + example.run + ensure + Singed.enabled = original_enabled + Singed.instance_variable_set(:@current_flamegraph, nil) end describe ".start" do @@ -42,7 +35,6 @@ describe ".stop" do before do Singed.enabled = true - Singed.output_directory = Dir.mktmpdir("singed-spec") end it "returns nil when not profiling" do diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 1850212..93d807f 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -15,8 +15,17 @@ # See https://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration require "singed" +require "tmpdir" RSpec.configure do |config| + config.around do |example| + Dir.mktmpdir("singed-spec") do |dir| + Singed.output_directory = dir + example.run + end + ensure + Singed.output_directory = nil + end # rspec-expectations config goes here. You can use an alternate # assertion/expectation library such as wrong or the stdlib/minitest # assertions if you prefer. diff --git a/spec/support/sidekiq.rb b/spec/support/sidekiq.rb index 4634569..c813758 100644 --- a/spec/support/sidekiq.rb +++ b/spec/support/sidekiq.rb @@ -1,5 +1,4 @@ require "singed/sidekiq" -require "tempfile" RSpec.configure do |config| config.before(:suite) do @@ -16,14 +15,6 @@ ActiveJob::Base.queue_adapter = :sidekiq ActiveJob::Base.logger = Logger.new(nil) end - - config.around(:each, sidekiq: true) do |example| - orig_dir = Singed.output_directory - Singed.output_directory = Dir.mktmpdir("singed-sidekiq-spec") - example.run - ensure - Singed.output_directory = orig_dir - end end # Sidekiq doesn't invoke middlewares in inline testingmode, so we need to invoke it oursleves