spec/request_spec.rb in metainspector-4.0.0.rc2 vs spec/request_spec.rb in metainspector-4.0.0.rc3

- old
+ new

@@ -58,53 +58,9 @@ MetaInspector::Request.new(url('http://caca232dsdsaer3sdsd-asd343.org'), exception_log: logger) end end - describe "retrying on timeouts" do - let(:logger) { MetaInspector::ExceptionLog.new } - subject do - MetaInspector::Request.new(url('http://pagerankalert.com'), - exception_log: logger, retries: 3) - end - - context "when request never succeeds" do - before{ Timeout.stub(:timeout).and_raise(Timeout::Error) } - it "swallows all the timeout errors and raises MetaInspector::Request::TimeoutError" do - logger.should receive(:<<).with(an_instance_of(MetaInspector::Request::TimeoutError)) - subject - end - end - - context "when request succeeds on third try" do - before do - Timeout.stub(:timeout).and_raise(Timeout::Error) - Timeout.stub(:timeout).and_raise(Timeout::Error) - Timeout.stub(:timeout).and_call_original - end - it "doesn't raise an exception" do - logger.should_not receive(:<<) - subject - end - it "succeeds as normal" do - subject.content_type.should == "text/html" - end - end - - context "when request succeeds on fourth try" do - before do - Timeout.stub(:timeout).exactly(3).times.and_raise(Timeout::Error) - # if it were called a fourth time, rspec would raise an error - # so this implicitely tests the correct behavior - end - it "swallows all the timeout errors and raises MetaInspector::Request::TimeoutError" do - logger.should receive(:<<).with(an_instance_of(MetaInspector::Request::TimeoutError)) - subject - end - end - - end - private def url(initial_url) MetaInspector::URL.new(initial_url) end