Class: ActiveSpec::Specifications::AttributesSpecification

Inherits:
Object
  • Object
show all
Defined in:
lib/active_spec/specifications/attributes_specification.rb

Overview

This is the base class for all specification classes that can act on any number of public object attributes. If you want to write a specification class that can act on many public object attributes, sub-class this class and define your own satisfied_by? method.

Instance Method Summary collapse

Constructor Details

#initialize(*attributes) ⇒ AttributesSpecification

The default initialize method stores all attributes in an instance variable called @attributes. When sub-classing, it is important to call super with the given attributes, for example:

class MyOwnSpecification < ActiveSpec::Specifications::AttributesSpecification
  def initialize(custom_var, *attributes)
    # do something with custom_var
    super(*attributes)
  end
end


19
20
21
# File 'lib/active_spec/specifications/attributes_specification.rb', line 19

def initialize(*attributes)
  @attributes = attributes
end

Instance Method Details

#satisfied_by?(object) ⇒ Boolean

This default implementation always returns true. Override this method in your own specification classes.

Returns:

  • (Boolean)


25
26
27
# File 'lib/active_spec/specifications/attributes_specification.rb', line 25

def satisfied_by?(object)
  true
end