Sha256: 11baac69dffe1fbd6c3a6a53586e581290056cf8b9259884e930b6123c0e800f

Contents?: true

Size: 1.53 KB

Versions: 20

Compression:

Stored size: 1.53 KB

Contents

$:.unshift(File.expand_path("../../lib", __FILE__))

require 'tempfile'
require 'eb_deployer'
require 'aws_driver_stubs'
require 'minitest/autorun'
require 'minitest/pride'

def silence_warnings(&block)
  old_verbose, $VERBOSE = $VERBOSE, nil
  yield
ensure
  $VERBOSE = old_verbose
end

silence_warnings { EbDeployer::Utils::BACKOFF_INITIAL_SLEEP = 0 }

class ErrorRaisingWrapper < SimpleDelegator
  def initialize(stub)
    @errors = {}
    super(stub)
  end

  def set_error(method, error)
    set_error_generator(method) do
      error
    end
  end

  def set_error_generator(method, &error_gen)
    define_delegate_method(method)
    @errors[method] = Proc.new(&error_gen)
  end

  private
  def define_delegate_method(method)
    method = method.to_s
    original_method_name = "__#{method}_without_error"
    raise "method #{method} not defined" unless self.respond_to?(method)
    return if self.respond_to?(original_method_name)

    self.instance_eval <<-CODE
      def #{original_method_name}(*args, &block)
        self.__get_obj__.send(:#{method}, *args, &block)
      end

      def #{method}(*args, &block)
        if error_gen = @errors[:#{method}]
          error = error_gen.call
          raise error if error
        end
        super
      end
    CODE
  end
end

class MiniTest::Unit::TestCase
  def sample_file(file_name, content='s' * 100)
    path = File.join('/tmp', file_name)
    File.open(path, 'w') { |f| f << content }
    path
  end

  def t(env, app_name)
    EbDeployer::EbEnvironment.unique_ebenv_name(env, app_name)
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
eb_deployer-0.6.0.beta2 test/test_helper.rb
eb_deployer-0.5.2 test/test_helper.rb
eb_deployer-0.6.0.beta1 test/test_helper.rb
eb_deployer-0.5.1.beta3 test/test_helper.rb
eb_deployer-0.5.1.beta2 test/test_helper.rb
eb_deployer-0.5.1.beta1 test/test_helper.rb
eb_deployer-0.5.0 test/test_helper.rb
eb_deployer-0.4.13 test/test_helper.rb
eb_deployer-0.4.12 test/test_helper.rb
eb_deployer-0.4.11 test/test_helper.rb
eb_deployer-0.4.10 test/test_helper.rb
eb_deployer-0.4.9 test/test_helper.rb
eb_deployer-0.4.8 test/test_helper.rb
eb_deployer-0.4.7.beta1 test/test_helper.rb
eb_deployer-0.4.6 test/test_helper.rb
eb_deployer-0.4.5 test/test_helper.rb
eb_deployer-0.4.4 test/test_helper.rb
eb_deployer-0.4.4.beta7 test/test_helper.rb
eb_deployer-0.4.4.beta6 test/test_helper.rb
eb_deployer-0.4.4.beta5 test/test_helper.rb