diff --git a/spec/models/site_spec.rb b/spec/models/site_spec.rb --- a/spec/models/site_spec.rb +++ b/spec/models/site_spec.rb @@ -4,39 +4,44 @@ describe Site do before(:each) do - start_time = Time.local(2008,5,10,9,00) + start_time = Time.local(2008,5,10,9,00).gmtime @site = Site.new({:name => 'Test site', :started => true, :start_time => start_time }) + @site.stub!(:start_time). + any_number_of_times. + and_return(start_time) + @site.stub!(:started).any_number_of_times.and_return(true) end it "should report that the contest is not finished when the contest time limit is not set" do Configuration.should_receive(:[]).with('contest.time_limit'). and_return('unlimit') - Time.should_not_receive(:now) @site.finished?.should == false end it "should report that the contest is finished when the contest is over" do Configuration.should_receive(:[]).with('contest.time_limit'). - and_return('5:00') - Time.should_receive(:now).and_return(Time.local(2008,5,10,14,01)) - @site.finished?.should == true - end + and_return('5:00') + Time.stub!(:now). + and_return(Time.local(2008,5,10,14,01).gmtime) + @site.finished?.should == true end it "should report if the contest is finished correctly, when the contest is over, and the contest time contains some minutes" do Configuration.should_receive(:[]).twice.with('contest.time_limit'). and_return('5:15') - Time.should_receive(:now). - and_return(Time.local(2008,5,10,14,14),Time.local(2008,5,10,14,16)) + Time.stub!(:now). + and_return(Time.local(2008,5,10,14,14)) @site.finished?.should == false + Time.stub!(:now). + and_return(Time.local(2008,5,10,14,16)) @site.finished?.should == true end it "should report that the contest is not finished, when the time is exactly at the finish time" do Configuration.should_receive(:[]).with('contest.time_limit'). and_return('5:00') - Time.should_receive(:now).and_return(Time.local(2008,5,10,14,00)) + Time.stub!(:now).and_return(Time.local(2008,5,10,14,00)) @site.finished?.should == false end