Sha256: 0db3319bbf93da5bb1095773611b9da92fb11ef7d08110a41dd24db423a418f7

Contents?: true

Size: 1.4 KB

Versions: 6

Compression:

Stored size: 1.4 KB

Contents

require "bundler/gem_tasks"

require 'rspec/core/rake_task'

desc "run specs"
RSpec::Core::RakeTask.new

task :default => :spec


desc "Remove the test_run Rails app (if it's there)"
task :clean do
  system 'rm -rf test_run'
end

desc "Execute a test run with the specified scrolls."
task :run => :clean do
  scrolls = ENV['SCROLLS'].split(',')

  require 'tempfile'
  require 'appscrolls'

  template = AppScrollsScrolls::Template.new(scrolls)

  begin
    dir = Dir.mktmpdir "rails_template"
    Dir.chdir(dir) do
      file = File.open('template.rb', 'w')
      file.write template.compile
      file.close  
    
      system "rails new test_run -m template.rb #{template.args.join(' ')}"

      puts "\n\n cd #{dir} # look at the app"
      puts "#{ENV['EDITOR']} #{dir} # edit the app"
    end
  end
end

desc "Prints out a template from the provided scrolls."
task :print do
  require 'appscrolls'

  scrolls = ENV['SCROLLS'].split(',')
  puts AppScrollsScrolls::Template.new(scrolls).compile
end

namespace :list do
  desc "Display scrolls by category"
  task :categories do
    require 'appscrolls'
    categories = AppScrollsScrolls::Scrolls.categories.sort
    categories = (categories - ["other"]) + ["other"]
    categories.each do |category|
      puts "#{category}: #{AppScrollsScrolls::Scrolls.for(category).join(", ")}"
    end
  end

  # desc "Display scrolls by exclusion"
  # task :exclusions do
  # 
  # end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
appscrolls-0.11.2 Rakefile
appscrolls-0.11.1 Rakefile
appscrolls-0.11.0 Rakefile
appscrolls-0.10.1 Rakefile
appscrolls-0.10.0 Rakefile
appscrolls-0.9.0 Rakefile