1 desc 'Create YAML test fixtures from data in an existing database.
2 Defaults to development database. Set RAILS_ENV to override.'
4 task :extract_fixtures => :environment do
5 sql = "SELECT * FROM `%s`"
6 skip_tables = ["schema_info"]
7 ActiveRecord::Base.establish_connection
8 (ActiveRecord::Base.connection.tables - skip_tables).each do |table_name|
10 File.open("#{Rails.root}/test/fixtures/#{table_name}.yml", 'w') do |file|
11 data = ActiveRecord::Base.connection.select_all(sql % table_name)
12 file.write data.inject({}) { |hash, record|
13 hash["#{table_name}_#{i.succ!}"] = record