Skip to content

Commit d580a70

Browse files
authored
Merge pull request #63 from dpep/global-spec-temp-dir
Global spec temp directory setup
2 parents b9322c3 + a43a533 commit d580a70

File tree

3 files changed

+14
-21
lines changed

3 files changed

+14
-21
lines changed

spec/singed_spec.rb

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,12 @@
11
# frozen_string_literal: true
22

3-
require "tempfile"
4-
53
RSpec.describe Singed do
64
around do |example|
7-
original_output_directory = Singed.output_directory
8-
Singed.output_directory = Dir.mktmpdir("singed-spec")
95
original_enabled = Singed.enabled?
10-
begin
11-
example.run
12-
ensure
13-
Singed.output_directory = original_output_directory
14-
Singed.enabled = original_enabled
15-
Singed.instance_variable_set(:@current_flamegraph, nil)
16-
end
6+
example.run
7+
ensure
8+
Singed.enabled = original_enabled
9+
Singed.instance_variable_set(:@current_flamegraph, nil)
1710
end
1811

1912
describe ".start" do
@@ -42,7 +35,6 @@
4235
describe ".stop" do
4336
before do
4437
Singed.enabled = true
45-
Singed.output_directory = Dir.mktmpdir("singed-spec")
4638
end
4739

4840
it "returns nil when not profiling" do

spec/spec_helper.rb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,18 @@
1515
# See https://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
1616

1717
require "singed"
18+
require "tmpdir"
1819

1920
RSpec.configure do |config|
21+
config.around do |example|
22+
original_output_directory = Singed.output_directory
23+
Dir.mktmpdir("singed-spec") do |dir|
24+
Singed.output_directory = dir
25+
example.run
26+
end
27+
ensure
28+
Singed.output_directory = original_output_directory
29+
end
2030
# rspec-expectations config goes here. You can use an alternate
2131
# assertion/expectation library such as wrong or the stdlib/minitest
2232
# assertions if you prefer.

spec/support/sidekiq.rb

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
require "singed/sidekiq"
2-
require "tempfile"
32

43
RSpec.configure do |config|
54
config.before(:suite) do
@@ -16,14 +15,6 @@
1615
ActiveJob::Base.queue_adapter = :sidekiq
1716
ActiveJob::Base.logger = Logger.new(nil)
1817
end
19-
20-
config.around(:each, sidekiq: true) do |example|
21-
orig_dir = Singed.output_directory
22-
Singed.output_directory = Dir.mktmpdir("singed-sidekiq-spec")
23-
example.run
24-
ensure
25-
Singed.output_directory = orig_dir
26-
end
2718
end
2819

2920
# Sidekiq doesn't invoke middlewares in inline testingmode, so we need to invoke it oursleves

0 commit comments

Comments
 (0)