Sha256: e552f2a6149db726bce039ccfba6be6010bca4fc4e294a044fea0ea4fbed9df2

Contents?: true

Size: 1.25 KB

Versions: 26

Compression:

Stored size: 1.25 KB

Contents

require 'rspec/matchers'

RSpec::Matchers.define :have_command_like do |regex|
  match do |command_list|
    @found = command_list.find{|c| c =~ regex }
    !!@found
  end

  failure_message_for_should do |command_list|
    "Didn't find a command matching #{regex} in commands:\n\n" + command_list.join("\n\n")
  end

  failure_message_for_should_not do |command_list|
    "Found unwanted command:\n\n#{@found}\n\n(matches regex #{regex})"
  end
end

RSpec::Matchers.define :have_app_code do
  match { |instance| instance.has_app_code? }

  failure_message_for_should do |instance|
    "Expected #has_app_code? to be true on instance: #{instance.inspect}"
  end

  failure_message_for_should_not do |instance|
    "Expected #has_app_code? to be false on instance: #{instance.inspect}"
  end
end

RSpec::Matchers.define :resolve_to do |expected|
  match do |pair|
    app, env = *pair
    app.name == expected[:app_name] && env.name == expected[:environment_name]
  end

  failure_message_for_should do |pair|
    app, env = *pair
    "Expected: #{expected[:app_name]}, #{expected[:environment_name]}; Got: #{app.name}, #{env.name}"
  end

  failure_message_for_should_not do |pair|
    "Expected to not match: #{expected[:app_name]}, #{expected[:environment_name]}"
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
engineyard-1.4.29 spec/support/matchers.rb
engineyard-1.4.28 spec/support/matchers.rb
engineyard-1.4.27 spec/support/matchers.rb
engineyard-1.4.24 spec/support/matchers.rb
engineyard-1.4.23 spec/support/matchers.rb
engineyard-1.4.22 spec/support/matchers.rb
engineyard-1.4.21 spec/support/matchers.rb
engineyard-1.4.20 spec/support/matchers.rb
engineyard-1.4.19 spec/support/matchers.rb
engineyard-1.4.18 spec/support/matchers.rb
engineyard-1.4.17 spec/support/matchers.rb
engineyard-1.4.16 spec/support/matchers.rb
engineyard-1.4.15 spec/support/matchers.rb
engineyard-1.4.14 spec/support/matchers.rb
engineyard-1.4.13 spec/support/matchers.rb
engineyard-1.4.11 spec/support/matchers.rb
engineyard-1.4.10 spec/support/matchers.rb
engineyard-1.4.9 spec/support/matchers.rb
engineyard-1.4.8 spec/support/matchers.rb
engineyard-1.4.7 spec/support/matchers.rb