From 610eac0af6f8faf426b46f14ecbe9a312b428bb0 Mon Sep 17 00:00:00 2001 From: Louise Crow Date: Mon, 17 Dec 2012 10:32:36 +0000 Subject: Rewrite specs that were in spec/controller/application_controller as full-stack controller specs in the relevant controllers. It turns out that having spec blocks that reference the ApplicationController class directly i.e. "describe ApplicationController" can have unpredictable effects. actionpack's action_controller/test_case.rb rewrites rescue_action_without_handler on whatever it is included in, and if this is done on a controller class, and then directly on action controller, it can result in an infinite loop of recursive calls. This turns out to be the problem that was causing some tests in error_spec.rb to fail in Travis under Ruby 1.9. --- spec/controllers/application_controller_spec.rb | 54 ------------------------- 1 file changed, 54 deletions(-) delete mode 100644 spec/controllers/application_controller_spec.rb (limited to 'spec/controllers/application_controller_spec.rb') diff --git a/spec/controllers/application_controller_spec.rb b/spec/controllers/application_controller_spec.rb deleted file mode 100644 index 18341ae6f..000000000 --- a/spec/controllers/application_controller_spec.rb +++ /dev/null @@ -1,54 +0,0 @@ -require File.expand_path(File.dirname(__FILE__) + '/../spec_helper') -require 'fakeweb' - -describe ApplicationController, "when accessing third party services" do - - before (:each) do - FakeWeb.clean_registry - end - - after (:each) do - FakeWeb.clean_registry - end - - it "should succeed if the service responds OK" do - Configuration.stub!(:gaze_url).and_return('http://denmark.com') - FakeWeb.register_uri(:get, %r|denmark.com|, :body => "DK") - country = self.controller.send :country_from_ip - country.should == "DK" - end - it "should fail silently if the country_from_ip domain doesn't exist" do - Configuration.stub!(:gaze_url).and_return('http://12123sdf14qsd.com') - country = self.controller.send :country_from_ip - country.should == Configuration.iso_country_code - end - it "should fail silently if the country_from_ip service doesn't exist" do - Configuration.stub!(:gaze_url).and_return('http://www.google.com') - country = self.controller.send :country_from_ip - country.should == Configuration.iso_country_code - end - it "should fail silently if the country_from_ip service returns an error" do - FakeWeb.register_uri(:get, %r|500.com|, :body => "Error", :status => ["500", "Error"]) - Configuration.stub!(:gaze_url).and_return('http://500.com') - country = self.controller.send :country_from_ip - country.should == Configuration.iso_country_code - end -end - -describe ApplicationController, "when caching fragments" do - - it "should not fail with long filenames" do - long_name = "blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah.txt" - params = { :only_path => true, - :file_name => [long_name], - :controller => "request", - :action => "get_attachment_as_html", - :id => "132", - :incoming_message_id => "44", - :part => "2" } - path = self.controller.send(:foi_fragment_cache_path, params) - self.controller.send(:foi_fragment_cache_write, path, "whassap") - end - -end - -- cgit v1.2.3