Report abuse


			
class Object
  def should_equal(other)
    puts "testing equality of #{self} and #{other}"
    self
  end
end

class String
  def zen
    yield
  end

  def foo(a, b = 0)
    zen { return 3 }
  end

  def ok(a, b = 0)
    return 3
  end
end

"hello".foo(1).should_equal(3)
"hello".foo(1, 2).should_equal(3)
"hello".ok(1).should_equal(3)
"hello".ok(1, 2).should_equal(3)