Sha256: b21bb69b6edf4e8726dfda30f4d048a87f04e5a58ef95a23f65629ca30f74227

Contents?: true

Size: 890 Bytes

Versions: 3

Compression:

Stored size: 890 Bytes

Contents

module BluebaseTestHelpers
  APP_NAME = "dummy"

  def remove_project_directory
    FileUtils.rm_rf(project_path)
  end

  def create_tmp_directory
    FileUtils.mkdir_p(tmp_path)
  end

  def run_bluebase(arguments = nil)
    Dir.chdir(tmp_path) do
      Bundler.with_clean_env do
        ENV["TESTING"] = "1"

        %x(#{bluebase_bin} #{APP_NAME} #{arguments})
      end
    end
  end

  def drop_dummy_database
    if File.exist?(project_path)
      Dir.chdir(project_path) do
        Bundler.with_clean_env do
          `rake db:drop`
        end
      end
    end
  end

  def project_path
    @project_path ||= Pathname.new("#{tmp_path}/#{APP_NAME}")
  end

  private

  def tmp_path
    @tmp_path ||= Pathname.new("#{root_path}/tmp")
  end

  def bluebase_bin
    File.join(root_path, "bin", "bluebase")
  end

  def root_path
    File.expand_path("../../../", __FILE__)
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
bluebase-1.1.0 spec/support/bluebase.rb
bluebase-1.0.1 spec/support/bluebase.rb
bluebase-1.0.0 spec/support/bluebase.rb