Sha256: 6ca042e2a2a51affbb9b2036afea4defc1a564cea4409eddbb7b7b237c4dd1ba
Contents?: true
Size: 1.58 KB
Versions: 1
Compression:
Stored size: 1.58 KB
Contents
namespace :rails do task :test do raise "need a DRIVER e.g. DRIVER=mysql" unless driver = ENV['DRIVER'] || ENV['ADAPTER'] raise "need location of RAILS source code e.g. RAILS=../rails" unless rails_dir = ENV['RAILS'] rails_dir = File.join(rails_dir, '..') if rails_dir =~ /activerecord$/ activerecord_dir = File.join(rails_dir, 'activerecord') # rails/activerecord ar_jdbc_dir = File.expand_path('..', File.dirname(__FILE__)) rubylib = [ "#{ar_jdbc_dir}/lib", "#{ar_jdbc_dir}/jdbc-#{_driver(driver)}/lib", "#{ar_jdbc_dir}/activerecord-jdbc#{_adapter(driver)}-adapter/lib" ] rubylib << File.expand_path('activesupport/lib', rails_dir) rubylib << File.expand_path('activemodel/lib', rails_dir) rubylib << File.expand_path(File.join(activerecord_dir, 'lib')) #rubylib << File.expand_path('actionpack/lib', rails_dir) Dir.chdir(activerecord_dir) { rake "RUBYLIB=#{rubylib.join(':')}", "#{_target(driver)}" } end %w(MySQL SQLite3 Postgres).each do |adapter| desc "Run Rails' ActiveRecord tests with #{adapter} (JDBC)" task "test_#{adapter.downcase}" do ENV['ADAPTER'] = adapter; Rake::Task['rails:test'].invoke end end private def _adapter(name) case name when /postgres/i 'postgresql' else name.downcase end end def _driver(name) case name when /postgres/i 'postgres' else name.downcase end end def _target(name) case name when /postgres/i 'test_jdbcpostgresql' else "test_jdbc#{name.downcase}" end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
activerecord-jdbc-adapter-1.3.0.beta1 | rakelib/rails.rake |