Sha256: 8407b0c65f9bdedc1ff69fe049a98aaf6aaa37e2083d5cb62a58346f961458b0

Contents?: true

Size: 1.14 KB

Versions: 15

Compression:

Stored size: 1.14 KB

Contents

desc "generate and load survey (specify FILE=surveys/your_survey.rb)"
task :surveyor => :"surveyor:default"

namespace :surveyor do
  
  task :default => [:generate_fixtures, :load_fixtures]
  
  desc "generate survey fixtures from survey file"
  task :generate_fixtures => :environment do
    require File.join(File.dirname(__FILE__), "../../script/surveyor/survey_parser")
    raise "USAGE: file name required e.g. 'FILE=surveys/kitchen_sink_survey.rb'" if ENV["FILE"].blank?
    fixture_dir = File.join(RAILS_ROOT, "surveys", "fixtures")
    mkdir fixture_dir unless File.exists?(fixture_dir)
    SurveyParser.parse(File.join(RAILS_ROOT, ENV["FILE"]))
  end

  desc "load survey fixtures"
  task :load_fixtures => :environment do
    require 'active_record/fixtures'
    
    ActiveRecord::Base.establish_connection(RAILS_ENV.to_sym)

    fixture_dir = File.join(RAILS_ROOT, "surveys", "fixtures")
    fixtures = Dir.glob("#{fixture_dir}/*.yml")
    raise "No fixtures found." if fixtures.empty?
    
    fixtures.each do |file_name|
      puts "Loading #{file_name}..."
      Fixtures.create_fixtures(fixture_dir, File.basename(file_name, '.*'))
    end
  end

end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
surveyor-0.9.1 lib/tasks/surveyor_tasks.rake
surveyor-0.9.0 lib/tasks/surveyor_tasks.rake
surveyor-0.8.0 lib/tasks/surveyor_tasks.rake
surveyor-0.7.1 lib/tasks/surveyor_tasks.rake
surveyor-0.7.0 lib/tasks/surveyor_tasks.rake
surveyor-0.6.10 lib/tasks/surveyor_tasks.rake
surveyor-0.6.9 lib/tasks/surveyor_tasks.rake
surveyor-0.6.8 lib/tasks/surveyor_tasks.rake
surveyor-0.6.7 lib/tasks/surveyor_tasks.rake
surveyor-0.6.6 lib/tasks/surveyor_tasks.rake
surveyor-0.6.5 lib/tasks/surveyor_tasks.rake
surveyor-0.6.4 lib/tasks/surveyor_tasks.rake
surveyor-0.6.3 lib/tasks/surveyor_tasks.rake
surveyor-0.6.2 lib/tasks/surveyor_tasks.rake
surveyor-0.6.1 lib/tasks/surveyor_tasks.rake