Module: Gimme

Defined in:
lib/gimme/gives.rb,
lib/gimme/captor.rb,
lib/gimme/errors.rb,
lib/gimme/matchers.rb,
lib/gimme/verifies.rb,
lib/gimme/test_double.rb,
lib/gimme/method_resolver.rb

Defined Under Namespace

Modules: Errors, Matchers Classes: BlankSlate, Captor, Gives, MethodResolver, TestDouble, Verifies

Instance Method Summary collapse

Instance Method Details

#gimme(cls = nil) ⇒ Object



47
48
49
# File 'lib/gimme/test_double.rb', line 47

def gimme(cls=nil)
  Gimme::TestDouble.new(cls)
end

#gimme_next(cls) ⇒ Object



51
52
53
54
55
56
57
58
59
60
61
# File 'lib/gimme/test_double.rb', line 51

def gimme_next(cls)
  double = Gimme::TestDouble.new(cls)
  meta_class = class << cls; self; end 
  real_new = cls.method(:new)
  meta_class.send(:define_method,:new) do |*args|
    double.send(:initialize,*args)
    meta_class.send(:define_method,:new,real_new) #restore :new on the class
    double
  end    
  double
end

#give(double) ⇒ Object



18
19
20
# File 'lib/gimme/gives.rb', line 18

def give(double)
  Gimme::Gives.new(double)
end

#give!(double) ⇒ Object



22
23
24
25
26
# File 'lib/gimme/gives.rb', line 22

def give!(double)
  give = give(double)
  give.raises_no_method_error = false
  give
end

#verify(double, times = 1) ⇒ Object



35
36
37
# File 'lib/gimme/verifies.rb', line 35

def verify(double,times=1)
  Gimme::Verifies.new(double,times)
end

#verify!(double, times = 1) ⇒ Object



39
40
41
42
43
# File 'lib/gimme/verifies.rb', line 39

def verify!(double,times=1)
  verify = verify(double,times)
  verify.raises_no_method_error = false
  verify
end