Skip to content

Commit

Permalink
trying to get tests to run on rails 2.3.5
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Reinsch committed Mar 18, 2010
1 parent 4d1fed2 commit 55e37fe
Showing 1 changed file with 41 additions and 4 deletions.
45 changes: 41 additions & 4 deletions test/test_helper.rb
Expand Up @@ -2,6 +2,8 @@
require "rubygems" require "rubygems"
require "ruby-debug" require "ruby-debug"
require "active_record" require "active_record"
require "action_controller"
require "action_controller/test_process"


ActiveRecord::Schema.verbose = false ActiveRecord::Schema.verbose = false
ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :dbfile => ":memory:") ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :dbfile => ":memory:")
Expand Down Expand Up @@ -45,14 +47,34 @@


require "active_record/fixtures" require "active_record/fixtures"
require "openid" require "openid"
Rails = true # to trick authlogic into loading the rails adapter
module Rails
module VERSION
STRING = "2.3.5"
end
end

require File.dirname(__FILE__) + "/../../authlogic/lib/authlogic" require File.dirname(__FILE__) + "/../../authlogic/lib/authlogic"
require File.dirname(__FILE__) + "/../../authlogic/lib/authlogic/test_case" require File.dirname(__FILE__) + "/../../authlogic/lib/authlogic/test_case"
require File.dirname(__FILE__) + '/../../open_id_authentication/lib/open_id_authentication.rb' require File.dirname(__FILE__) + '/../../open_id_authentication/lib/open_id_authentication'

# this is partly from open_id_authentication/init.rb
ActionController::Base.send :include, OpenIdAuthentication

require File.dirname(__FILE__) + '/../lib/authlogic_openid' unless defined?(AuthlogicOpenid) require File.dirname(__FILE__) + '/../lib/authlogic_openid' unless defined?(AuthlogicOpenid)
require File.dirname(__FILE__) + '/libs/user' require File.dirname(__FILE__) + '/libs/user'
require File.dirname(__FILE__) + '/libs/user_session' require File.dirname(__FILE__) + '/libs/user_session'


ActionController::Routing::Routes.draw do |map|
map.connect ':controller/:action/:id', :controller => 'session'
end

class SessionController < ActionController::Base
def default_template(action_name = self.action_name)
nil
end
end

class ActiveSupport::TestCase class ActiveSupport::TestCase
include ActiveRecord::TestFixtures include ActiveRecord::TestFixtures
self.fixture_path = File.dirname(__FILE__) + "/fixtures" self.fixture_path = File.dirname(__FILE__) + "/fixtures"
Expand All @@ -68,10 +90,25 @@ def activate_authlogic
end end


def controller def controller
@controller ||= Authlogic::ControllerAdapters::RailsAdapter.new(ActionController.new) @controller ||= create_controller
end

def create_controller
@request = ActionController::TestRequest.new
@request.path_parameters = {:action => "index", :controller => "session"}
@response = ActionController::TestResponse.new

c = SessionController.new
c.params = {}
c.request = @request
c.response = @response
c.send(:reset_session)
c.send(:initialize_current_url)

Authlogic::ControllerAdapters::RailsAdapter.new(c)
end end


def redirecting_to_yahoo? def redirecting_to_yahoo?
controller.redirecting_to.to_s =~ /^https:\/\/open.login.yahooapis.com\/openid\/op\/auth/ @response.redirected_to.to_s =~ /^https:\/\/open.login.yahooapis.com\/openid\/op\/auth/
end end
end end

0 comments on commit 55e37fe

Please sign in to comment.