Module: Neo
- Defined in:
- lib/neo/rails/mock.rb,
lib/neo/rails.rb,
lib/neo/rails/engine.rb,
lib/neo/rails/version.rb,
lib/neo/rails/exposure.rb,
lib/neo/rails/presenter.rb,
lib/neo/rails/scenarios.rb,
lib/neo/rails/presenter/test_helper.rb,
lib/neo/rails/scenarios/test_helper.rb,
lib/neo/rails/scenarios/rails_helper.rb
Overview
A Mock can fake an object.
This is useful when frontend developers want to fill a page with mock data. Mocks can pre-define interface for real data.
Usage
app/mocks/user_mock.rb:
class UserMock < Neo::Rails::Mock
def age
mock.tagged?(:old) ? 78 : 23
end
def name
"Uncle bob"
end
def logged_in?
true
end
def sexy?
mock.tagged?(:sexy)
end
def car
mock.option(:car)
end
end
Further…
old_man = UserMock.new(:old)
old_man.age # => 78
old_man.name # => "Uncle Bob"
old_man.car # => nil
old_sexbomb = UserMock.new(:old, :sexy, :car => CarMock.new(:porsche))
old_sexbomb.age # => 78
old_sexbomb.sexy? # => true
old_sexbomb.car # => CarMock
Defined Under Namespace
Modules: Rails