Sha256: e793818a733cb48d2c8291155050983200d9890f102c9dd090d4afb9867ed507

Contents?: true

Size: 985 Bytes

Versions: 4

Compression:

Stored size: 985 Bytes

Contents

module SpecHelpers
  def reset!
    FileUtils.rm_rf   tmp
    [ home, local ].each do |dir|
      FileUtils.mkdir_p(dir)
    end
  end

  def cd(path, &blk)
    Dir.chdir(path, &blk)
  end

  def cwd(*args)
    Pathname.new(Dir.pwd).join(*args)
  end

  def rm(path)
    FileUtils.rm path
  end

  def rm_r(path)
    FileUtils.rm_r path
  end

  def rm_rf(path)
    FileUtils.rm_rf(path)
  end

  def root
    @root ||= Pathname.new(File.expand_path("../../..", __FILE__))
  end

  def fixtures(*path)
    root.join('spec/fixtures', *path)
  end

  def tmp(*path)
    root.join("tmp", *path)
  end

  def home(*path)
    tmp.join("home", *path)
  end

  def local(*path)
    tmp.join("local", *path)
  end

  def bpm_dir(*path)
    home(BPM::BPM_DIR, *path)
  end

  def goto_home
    cd(home)
    env["HOME"] = home.to_s
    env["BPM_HOME"] = bpm_dir.to_s
    env["BPM_PATH"] = bpm_dir.to_s
    LibGems.clear_paths
  end

  module_function :root, :tmp, :home, :local, :goto_home
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
bpm-0.1.4 spec/support/path.rb
bpm-0.1.3 spec/support/path.rb
bpm-0.1.2 spec/support/path.rb
bpm-0.1.0 spec/support/path.rb