Sha256: 0b3c327cd3a28694de550a792ec70922a481f5229e78ae86b8cf6e51410e8702

Contents?: true

Size: 1.19 KB

Versions: 11

Compression:

Stored size: 1.19 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/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::Parser.parse(File.join(RAILS_ROOT, ENV["FILE"]))
  end

  desc "load survey fixtures"
  task :load_fixtures => :environment do
    require 'active_record/fixtures'
    require 'fixtures_extensions' unless ENV["APPEND"].blank?
    ActiveRecord::Base.establish_connection(Rails.env)

    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

11 entries across 11 versions & 3 rubygems

Version Path
ccls-surveyor-1.0.0 lib/tasks/surveyor_tasks.rake
jakewendt-surveyor-0.11.3 lib/tasks/surveyor_tasks.rake
surveyor-0.12.1 lib/tasks/surveyor_tasks.rake
surveyor-0.11.0 lib/tasks/surveyor_tasks.rake
surveyor-0.10.0 lib/tasks/surveyor_tasks.rake
surveyor-0.9.10 lib/tasks/surveyor_tasks.rake
surveyor-0.9.9 lib/tasks/surveyor_tasks.rake
surveyor-0.9.8 lib/tasks/surveyor_tasks.rake
surveyor-0.9.7 lib/tasks/surveyor_tasks.rake
surveyor-0.9.6 lib/tasks/surveyor_tasks.rake
surveyor-0.9.5 lib/tasks/surveyor_tasks.rake