summaryrefslogtreecommitdiff
path: root/spec/support/tmpdir.rb
blob: 92126ec1522f9f1ea15ff74b2a192ba6e0658c1e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# frozen_string_literal: true

require 'tmpdir'

module TmpdirHelper
  def mktmpdir
    @tmpdir_helper_dirs ||= []
    @tmpdir_helper_dirs << Dir.mktmpdir
    @tmpdir_helper_dirs.last
  end

  def self.included(base)
    base.after do
      if @tmpdir_helper_dirs
        FileUtils.rm_rf(@tmpdir_helper_dirs)
        @tmpdir_helper_dirs = nil
      end
    end
  end
end