Sha256: 81f22738b3070f7a78b306c288069ed0bb50635e088323ed274fb9be7cdf0678

Contents?: true

Size: 967 Bytes

Versions: 17

Compression:

Stored size: 967 Bytes

Contents

class FakeHeroku
  RECORDER = File.expand_path(File.join('..', '..', 'tmp', 'heroku_commands'), File.dirname(__FILE__))

  def initialize(args)
    @args = args
  end

  def run!
    File.open(RECORDER, 'a') do |file|
      file.puts @args.join(' ')
    end
  end

  def self.clear!
    FileUtils.rm_rf RECORDER
  end

  def self.has_gem_included?(project_path, gem_name)
    gemfile = File.open(File.join(project_path, 'Gemfile'), 'a')

    File.foreach(gemfile).any? do |line|
      line.match(/#{Regexp.quote(gem_name)}/)
    end
  end

  def self.has_created_app_for?(remote_name)
    app_name = "#{SuspendersTestHelpers::APP_NAME}-#{remote_name}"
    expected_line = "create #{app_name} --remote=#{remote_name}\n"

    File.foreach(RECORDER).any? { |line| line == expected_line }
  end

  def self.has_configured_vars?(remote_name, var)
    File.foreach(RECORDER).any? do |line|
      line =~ /^config:add #{var}=.+ --remote=#{remote_name}\n$/
    end
  end
end

Version data entries

17 entries across 17 versions & 3 rubygems

Version Path
ajmalafif-suspenders-1.18.2 spec/support/fake_heroku.rb
ajmalafif-suspenders-1.18.1 spec/support/fake_heroku.rb
ajmalafif-suspenders-1.18.0 spec/support/fake_heroku.rb
suspenders-1.18.0 spec/support/fake_heroku.rb
suspenders-1.17.0 spec/support/fake_heroku.rb
suspenders-1.16.0 spec/support/fake_heroku.rb
suspenders-1.15.0 spec/support/fake_heroku.rb
jetfuel-1.18.1 spec/support/fake_heroku.rb
jetfuel-1.18.0 spec/support/fake_heroku.rb
suspenders-1.14.0 spec/support/fake_heroku.rb
suspenders-1.13.0 spec/support/fake_heroku.rb
suspenders-1.12.0 spec/support/fake_heroku.rb
suspenders-1.11.0 spec/support/fake_heroku.rb
suspenders-1.10.2 spec/support/fake_heroku.rb
suspenders-1.10.1 spec/support/fake_heroku.rb
suspenders-1.10.0 spec/support/fake_heroku.rb
suspenders-1.9.3 spec/support/fake_heroku.rb