Changeset 4807
- Timestamp:
- 08/22/06 09:19:55 (2 years ago)
- Files:
-
- trunk/actionpack/CHANGELOG (modified) (1 diff)
- trunk/actionpack/test/abstract_unit.rb (modified) (1 diff)
- trunk/actionpack/test/active_record_unit.rb (modified) (2 diffs)
- trunk/actionpack/test/activerecord/active_record_assertions_test.rb (modified) (2 diffs)
- trunk/actionpack/test/activerecord/active_record_store_test.rb (modified) (2 diffs)
- trunk/actionpack/test/activerecord/pagination_test.rb (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/actionpack/CHANGELOG
r4804 r4807 1 1 *SVN* 2 2 3 * Clean up and run the Active Record integration tests by default. [Jeremy Kemper]3 * Clean up and run the Active Record integration tests by default. #5854 [kevin.clark@gmail.com, Jeremy Kemper] 4 4 5 5 * Correct example in cookies docs. #5832 [jessemerriman@warpmail.net] trunk/actionpack/test/abstract_unit.rb
r3777 r4807 7 7 require 'action_controller' 8 8 require 'breakpoint' 9 10 9 require 'action_controller/test_process' 11 10 trunk/actionpack/test/active_record_unit.rb
r4804 r4807 34 34 # Define the rest of the connector 35 35 class ActiveRecordTestConnector 36 def self.setup 37 unless self.connected || !self.able_to_connect 38 setup_connection 39 load_schema 40 self.connected = true 36 class << self 37 def setup 38 unless self.connected || !self.able_to_connect 39 setup_connection 40 load_schema 41 require_fixture_models 42 self.connected = true 43 end 44 rescue Object => e 45 $stderr.puts "\nSkipping ActiveRecord assertion tests: #{e}" 46 #$stderr.puts " #{e.backtrace.join("\n ")}\n" 47 self.able_to_connect = false 41 48 end 42 rescue Object => e43 $stderr.puts "\nSkipping ActiveRecord assertion tests: #{e}"44 #$stderr.puts " #{e.backtrace.join("\n ")}\n"45 self.able_to_connect = false46 end47 49 48 private50 private 49 51 50 def self.setup_connection 51 if Object.const_defined?(:ActiveRecord) 52 begin 53 ActiveRecord::Base.establish_connection(:adapter => 'sqlite3', :dbfile => ':memory:') 54 ActiveRecord::Base.connection 55 rescue Object 56 $stderr.puts 'SQLite 3 unavailable; falling to SQLite 2.' 57 ActiveRecord::Base.establish_connection(:adapter => 'sqlite', :dbfile => ':memory:') 58 ActiveRecord::Base.connection 52 def setup_connection 53 if Object.const_defined?(:ActiveRecord) 54 begin 55 connection_options = {:adapter => 'sqlite3', :dbfile => ':memory:'} 56 ActiveRecord::Base.establish_connection(connection_options) 57 ActiveRecord::Base.configurations = { 'sqlite3_ar_integration' => connection_options } 58 ActiveRecord::Base.connection 59 rescue Object 60 $stderr.puts 'SQLite 3 unavailable; falling to SQLite 2.' 61 connection_options = {:adapter => 'sqlite', :dbfile => ':memory:'} 62 ActiveRecord::Base.establish_connection(connection_options) 63 ActiveRecord::Base.configurations = { 'sqlite2_ar_integration' => connection_options } 64 ActiveRecord::Base.connection 65 end 66 67 Object.send(:const_set, :QUOTED_TYPE, ActiveRecord::Base.connection.quote_column_name('type')) unless Object.const_defined?(:QUOTED_TYPE) 68 else 69 raise "Couldn't locate ActiveRecord." 59 70 end 71 end 60 72 61 Object.send(:const_set, :QUOTED_TYPE, ActiveRecord::Base.connection.quote_column_name('type')) unless Object.const_defined?(:QUOTED_TYPE) 62 else 63 raise "Couldn't locate ActiveRecord." 73 # Load actionpack sqlite tables 74 def load_schema 75 File.read(File.dirname(__FILE__) + "/fixtures/db_definitions/sqlite.sql").split(';').each do |sql| 76 ActiveRecord::Base.connection.execute(sql) unless sql.blank? 77 end 64 78 end 65 end66 79 67 # Load actionpack sqlite tables 68 def self.load_schema 69 File.read(File.dirname(__FILE__) + "/fixtures/db_definitions/sqlite.sql").split(';').each do |sql| 70 ActiveRecord::Base.connection.execute(sql) unless sql.blank? 80 def require_fixture_models 81 Dir.glob(File.dirname(__FILE__) + "/fixtures/*.rb").each {|f| require f} 71 82 end 72 83 end … … 79 90 self.fixture_path = "#{File.dirname(__FILE__)}/fixtures/" 80 91 self.use_transactional_fixtures = false 92 end 93 94 def self.fixtures(*args) 95 super if ActiveRecordTestConnector.connected 81 96 end 82 97 trunk/actionpack/test/activerecord/active_record_assertions_test.rb
r4804 r4807 1 1 require "#{File.dirname(__FILE__)}/../active_record_unit" 2 require 'fixtures/company' if ActiveRecordTestConnector.able_to_connect3 2 4 3 class ActiveRecordAssertionsController < ActionController::Base … … 40 39 41 40 class ActiveRecordAssertionsControllerTest < ActiveRecordTestCase 42 fixtures :companies if ActiveRecordTestConnector.able_to_connect41 fixtures :companies 43 42 44 43 def setup trunk/actionpack/test/activerecord/active_record_store_test.rb
r4804 r4807 1 # Unfurl the safety net.2 path_to_ar = File.dirname(__FILE__) + '/../../../activerecord'3 if Object.const_defined?(:ActiveRecord) or File.exist?(path_to_ar)4 begin5 6 1 # These tests exercise CGI::Session::ActiveRecordStore, so you're going to 7 2 # need AR in a sibling directory to AP and have SQLite installed. 8 9 unless Object.const_defined?(:ActiveRecord) 10 require File.join(path_to_ar, 'lib', 'active_record') 11 end 12 13 require File.dirname(__FILE__) + '/../abstract_unit' 3 require File.dirname(__FILE__) + '/../active_record_unit' 14 4 require 'action_controller/session/active_record_store' 15 16 #ActiveRecord::Base.logger = Logger.new($stdout)17 begin18 CGI::Session::ActiveRecordStore::Session.establish_connection(:adapter => 'sqlite3', :database => ':memory:')19 CGI::Session::ActiveRecordStore::Session.connection20 rescue Object21 $stderr.puts 'SQLite 3 unavailable; falling back to SQLite 2.'22 begin23 CGI::Session::ActiveRecordStore::Session.establish_connection(:adapter => 'sqlite', :database => ':memory:')24 CGI::Session::ActiveRecordStore::Session.connection25 rescue Object26 $stderr.puts 'SQLite 2 unavailable; skipping ActiveRecordStore test suite.'27 raise SystemExit28 end29 end30 5 31 6 … … 166 141 end 167 142 end 168 169 170 # End of safety net.171 rescue Object => e172 $stderr.puts "Skipping CGI::Session::ActiveRecordStore tests: #{e}"173 #$stderr.puts " #{e.backtrace.join("\n ")}"174 end175 endtrunk/actionpack/test/activerecord/pagination_test.rb
r4804 r4807 1 1 require File.dirname(__FILE__) + '/../active_record_unit' 2 2 3 if ActiveRecordTestConnector.able_to_connect4 require 'fixtures/topic'5 require 'fixtures/reply'6 require 'fixtures/developer'7 require 'fixtures/project'8 end9 10 3 class PaginationTest < ActiveRecordTestCase 11 if ActiveRecordTestConnector.able_to_connect 12 fixtures :topics, :replies, :developers, :projects, :developers_projects 13 end 14 4 fixtures :topics, :replies, :developers, :projects, :developers_projects 5 15 6 class PaginationController < ActionController::Base 16 7 self.template_root = "#{File.dirname(__FILE__)}/../fixtures/"