Sha256: 80033e76e700c772dd8549e37cff8253a6732ff5dc622d860ce70b886d9058e5

Contents?: true

Size: 632 Bytes

Versions: 61

Compression:

Stored size: 632 Bytes

Contents

require 'mspec/matchers/stringsymboladapter'

class VariableMatcher
  include StringSymbolAdapter

  class << self
    attr_accessor :variables_method, :description
  end

  def initialize(variable)
    @variable = convert_name(variable)
  end

  def matches?(object)
    @object = object
    @object.send(self.class.variables_method).include? @variable
  end

  def failure_message
    ["Expected #{@object} to have #{self.class.description} '#{@variable}'",
     "but it does not"]
  end

  def negative_failure_message
    ["Expected #{@object} NOT to have #{self.class.description} '#{@variable}'",
     "but it does"]
  end
end

Version data entries

61 entries across 61 versions & 3 rubygems

Version Path
rhodes-5.5.18 lib/extensions/mspec/mspec/matchers/variable.rb
rhodes-5.5.17 lib/extensions/mspec/mspec/matchers/variable.rb
rhodes-5.5.15 lib/extensions/mspec/mspec/matchers/variable.rb
rhodes-5.5.0.22 lib/extensions/mspec/mspec/matchers/variable.rb
rhodes-5.5.2 lib/extensions/mspec/mspec/matchers/variable.rb
rhodes-5.5.0.7 lib/extensions/mspec/mspec/matchers/variable.rb
rhodes-5.5.0.3 lib/extensions/mspec/mspec/matchers/variable.rb
rhodes-5.5.0 lib/extensions/mspec/mspec/matchers/variable.rb
tauplatform-1.0.3 lib/extensions/mspec/mspec/matchers/variable.rb
mspec-1.9.1 lib/mspec/matchers/variable.rb
mspec-1.9.0 lib/mspec/matchers/variable.rb
tauplatform-1.0.2 lib/extensions/mspec/mspec/matchers/variable.rb
tauplatform-1.0.1 lib/extensions/mspec/mspec/matchers/variable.rb
mspec-1.8.0 lib/mspec/matchers/variable.rb
mspec-1.7.0 lib/mspec/matchers/variable.rb
mspec-1.6.0 lib/mspec/matchers/variable.rb
mspec-1.5.21 lib/mspec/matchers/variable.rb
mspec-1.5.20 lib/mspec/matchers/variable.rb
mspec-1.5.19 lib/mspec/matchers/variable.rb
mspec-1.5.18 lib/mspec/matchers/variable.rb