Class: Mongomatic::Expectations::Expectation

Inherits:
Object
  • Object
show all
Defined in:
lib/mongomatic/expectations.rb

Direct Known Subclasses

BeReference, Expected, IsNumber, Match, OfLength, Present

Class Attribute Summary collapse

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(instance, value, message, opts = {}) ⇒ Expectation

Returns a new instance of Expectation.



75
76
77
78
79
80
# File 'lib/mongomatic/expectations.rb', line 75

def initialize(instance, value, message, opts = {})
  @value = value
  @instance = instance
  @message = message
  @opts = opts
end

Class Attribute Details

.subclassesObject

Returns the value of attribute subclasses.



55
56
57
# File 'lib/mongomatic/expectations.rb', line 55

def subclasses
  @subclasses
end

Instance Attribute Details

#instanceObject

Returns the value of attribute instance.



52
53
54
# File 'lib/mongomatic/expectations.rb', line 52

def instance
  @instance
end

#messageObject

Returns the value of attribute message.



52
53
54
# File 'lib/mongomatic/expectations.rb', line 52

def message
  @message
end

#optsObject

Returns the value of attribute opts.



52
53
54
# File 'lib/mongomatic/expectations.rb', line 52

def opts
  @opts
end

#valueObject

Returns the value of attribute value.



52
53
54
# File 'lib/mongomatic/expectations.rb', line 52

def value
  @value
end

Class Method Details

.define_to_be?(klass) ⇒ Boolean

Returns:

  • (Boolean)


66
67
68
# File 'lib/mongomatic/expectations.rb', line 66

def define_to_be?(klass)
  klass.new(nil, nil, nil).respond_to? :to_be
end

.define_to_not_be?(klass) ⇒ Boolean

Returns:

  • (Boolean)


70
71
72
# File 'lib/mongomatic/expectations.rb', line 70

def define_to_not_be?(klass)
  klass.new(nil, nil, nil).respond_to? :to_not_be
end

.inherited(klass) ⇒ Object



62
63
64
# File 'lib/mongomatic/expectations.rb', line 62

def inherited(klass)
  subclasses << klass
end

Instance Method Details

#add_error_msgObject



82
83
84
85
86
87
88
89
# File 'lib/mongomatic/expectations.rb', line 82

def add_error_msg
  vars = Array(message)
  if vars.size == 2
    instance.errors.add(vars[0], vars[1])
  else
    instance.errors.add_to_base(vars[0])
  end
end