Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

83 lines (66 sloc) 2.401 kb
require 'bundler'
Bundler::GemHelper.install_tasks
require 'rake'
require "rspec/core/rake_task"
require 'rake/rdoctask'
def with_validatable(&block)
begin
require 'validatable'
ENV['VALIDATION_FRAMEWORK'] = 'validatable'
puts "Running task with Validatable validation framework."
yield block
rescue LoadError
STDERR.puts "WARNING: Validatable not available, skipping task."
end
end
def with_active_model(&block)
begin
require 'active_model'
ENV['VALIDATION_FRAMEWORK'] = 'active_model'
puts "Running task with ActiveModel validation framework."
yield block
rescue LoadError
STDERR.puts "WARNING: ActiveModel not available, skipping task."
end
end
task :default => :spec
task :spec_functional_validatable do
with_validatable { Rake::Task['spec_functional_default'].execute }
end
task :spec_functional_active_model do
with_active_model { Rake::Task['spec_functional_default'].execute }
end
task :spec_unit_validatable do
with_validatable { Rake::Task['spec_unit_default'].execute }
end
task :spec_unit_active_model do
with_active_model { Rake::Task['spec_unit_default'].execute }
end
desc "Run functional specs with default validation framework, override with VALIDATION_FRAMEWORK"
RSpec::Core::RakeTask.new(:spec_functional_default) do |spec|
spec.pattern = 'spec/*_spec.rb'
spec.rspec_opts = ['--options', "\"#{File.dirname(__FILE__)}/spec/spec.opts\""]
end
desc "Run unit specs with default validation framework, override with VALIDATION_FRAMEWORK"
RSpec::Core::RakeTask.new(:spec_unit_default) do |spec|
spec.pattern = 'spec/unit/*_spec.rb'
spec.rspec_opts = ['--options', "\"#{File.dirname(__FILE__)}/spec/spec.opts\""]
end
desc "Run functional specs with all validation frameworks"
task :spec_functional => [:spec_functional_validatable, :spec_functional_active_model] do
end
desc "Run unit specs with all validation frameworks"
task :spec_unit => [:spec_unit_validatable, :spec_unit_active_model] do
end
desc "Run all specs"
task :spec => [:spec_unit, :spec_functional] do
end
desc 'Generate documentation'
Rake::RDocTask.new(:rdoc) do |rdoc|
rdoc.rdoc_dir = 'rdoc'
rdoc.title = 'Couch Potato'
rdoc.options << '--line-numbers' << '--inline-source'
rdoc.rdoc_files.include('README.md')
rdoc.rdoc_files.include('lib/couch_potato.rb')
rdoc.rdoc_files.include('lib/couch_potato/**/*.rb')
end
Jump to Line
Something went wrong with that request. Please try again.