Sha256: c5bfec75f1149df20bc080a4059b932b33e5a02db6747e5c1bddfeb95ce1f0fa

Contents?: true

Size: 904 Bytes

Versions: 20

Compression:

Stored size: 904 Bytes

Contents

module SuspendersTestHelpers
  APP_NAME = "dummy_app"

  def remove_project_directory
    FileUtils.rm_rf(project_path)
  end

  def create_tmp_directory
    FileUtils.mkdir_p(tmp_path)
  end

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

        %x(#{suspenders_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 suspenders_bin
    File.join(root_path, 'bin', 'suspenders')
  end

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

Version data entries

20 entries across 20 versions & 2 rubygems

Version Path
philosophies-suspenders-2.2.6 spec/support/suspenders.rb
philosophies-suspenders-2.2.4 spec/support/suspenders.rb
philosophies-suspenders-2.2.3 spec/support/suspenders.rb
philosophies-suspenders-2.2.2 spec/support/suspenders.rb
philosophies-suspenders-2.2.1 spec/support/suspenders.rb
philosophies-suspenders-2.2.0 spec/support/suspenders.rb
philosophies-suspenders-2.1.2 spec/support/suspenders.rb
philosophies-suspenders-2.1.1 spec/support/suspenders.rb
philosophies-suspenders-2.1.0 spec/support/suspenders.rb
suspenders-1.33.0 spec/support/suspenders.rb
suspenders-1.32.0 spec/support/suspenders.rb
suspenders-1.31.0 spec/support/suspenders.rb
philosophies-suspenders-2.0.2 spec/support/suspenders.rb
suspenders-1.30.0 spec/support/suspenders.rb
philosophies-suspenders-2.0.0 spec/support/suspenders.rb
suspenders-1.29.0 spec/support/suspenders.rb
suspenders-1.28.0 spec/support/suspenders.rb
suspenders-1.27.0 spec/support/suspenders.rb
suspenders-1.26.0 spec/support/suspenders.rb
suspenders-1.25.0 spec/support/suspenders.rb