Sha256: d9556f21ed736503fc53401c93bdc24be65c2f76a44bd2fa1f8c89fe08496e7e

Contents?: true

Size: 718 Bytes

Versions: 1

Compression:

Stored size: 718 Bytes

Contents

= Quarry's Mocking Facility

Require mock.rb library.

  require 'quarry/stub/mock'


== Delegation Approach

   obj = "hello"

   @mck = Quarry::Mock.new

   @mck.upcase == "HeLLo"

   alt = obj.mock(@mck)

   lambda{ alt.upcase }.assert_raises(Assertion)

   obj.upcase.assert == "HELLO"


== Singleton Approach

   obj = "hi"

   obj.extend(@mck)

   @mck.upcase == "hI"

   lambda{ obj.upcase }.assert_raises(Assertion)

   obj.remove(@mck)

   obj.upcase.assert == "HI"


== Quick Extend Stubs

   obj = "hey"

   # implict obj.extend(obj.mock) here
   obj.mock.upcase == "HeY"

   lambda{ obj.upcase }.assert_raises(Assertion)

   obj.remove  # imples obj.remove(obj.stub)

   obj.upcase.assert == "HEY"

QED.


Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
quarry-0.4.0 spec/mock.rd