Stub メルマガのネタ
Time.nowって書いても、stub!で乗っ取れるので心配無用.
class Greeting def say return "hello!" if Time.now.hour == 9 return "good bye!" if Time.now.hour == 18 end end describe Greeting, "at 9:00" do before(:each) do Time.stub!(:now).and_return(Time.gm(*"2007-10-01-09-00".split("-"))) @greeting = Greeting.new end it "should say 'hello!'" do @greeting.say.should == "hello!" end end describe Greeting, "at 18:00" do before(:each) do Time.stub!(:now).and_return(Time.gm(*"2007-10-01-18-00".split("-"))) @greeting = Greeting.new end it "should say 'good bye!'" do @greeting.say.should == "good bye!" end end