Rakefile in adhearsion-1.2.6 vs Rakefile in adhearsion-2.0.0.alpha1
- old
+ new
@@ -2,71 +2,39 @@
ENV['RUBY_FLAGS'] = "-I#{%w(lib ext bin spec).join(File::PATH_SEPARATOR)}"
require 'rubygems'
require 'bundler/gem_tasks'
require 'bundler/setup'
-require 'date'
-require 'adhearsion/version'
-task :default => :spec
+task :default => [:spec, :features]
task :gem => :build
require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new
require 'ci/reporter/rake/rspec'
-task :ci => ['ci:setup:rspec', :spec]
+require 'ci/reporter/rake/cucumber'
+task :ci => ['ci:setup:rspec', :spec, 'ci:setup:rspec', :features]
+require 'cucumber'
+require 'cucumber/rake/task'
+require 'ci/reporter/rake/cucumber'
+Cucumber::Rake::Task.new(:features) do |t|
+ t.cucumber_opts = %w{--tags ~@jruby} unless defined?(JRUBY_VERSION)
+end
+
+Cucumber::Rake::Task.new(:wip) do |t|
+ t.cucumber_opts = %w{-p wip -q}
+end
+
begin
require 'yard'
YARD::Rake::YardocTask.new do |t|
t.files = ['lib/**/*.rb'] + %w[README.markdown TODO.markdown LICENSE]
end
rescue LoadError
STDERR.puts "\nCould not require() YARD! Install with 'gem install yard' to get the 'yardoc' task\n\n"
end
-desc "Check Ragel version"
-task :check_ragel_version do
- ragel_version_match = `ragel --version`.match /(\d)\.(\d)+/
- abort "Could not get Ragel version! Is it installed? You must have at least version 6.3" unless ragel_version_match
- big, small = ragel_version_match.captures.map &:to_i
- if big < 6 || (big == 6 && small < 3)
- abort "Please upgrade Ragel! You're on version #{ragel_version_match[0]} and must be on 6.3 or later"
- end
- if (big == 6 && small < 7)
- puts "WARNING: A change to Ruby since 1.9 affects the Ragel generated code."
- puts "WARNING: You MUST be using Ragel version 6.7 or have patched it using"
- puts "WARNING: the patch found at:"
- puts "WARNING: http://www.mail-archive.com/ragel-users@complang.org/msg00440.html"
- end
-end
-
-RAGEL_FILES = %w[lib/adhearsion/voip/asterisk/manager_interface/ami_lexer.rl.rb]
-
-desc "Used to regenerate the AMI source code files. Note: requires Ragel 6.3 or later be installed on your system"
-task :ragel => :check_ragel_version do
- RAGEL_FILES.each do |ragel_file|
- ruby_file = ragel_file.sub ".rl.rb", ".rb"
- puts `ragel -n -R #{ragel_file} -o #{ruby_file} 2>&1`
- raise "Failed generating code from Ragel file #{ragel_file}" if $?.to_i.nonzero?
- end
-end
-
-desc "Generates a GraphVis document showing the Ragel state machine"
-task :visualize_ragel => :check_ragel_version do
- RAGEL_FILES.each do |ragel_file|
- base_name = File.basename ragel_file, ".rl.rb"
- puts "ragel -V #{ragel_file} -o #{base_name}.dot 2>&1"
- puts `ragel -V #{ragel_file} -o #{base_name}.dot 2>&1`
- raise "Failed generating code from Ragel file #{ragel_file}" if $?.to_i.nonzero?
- end
-end
-
-desc "Test that the .gemspec file executes"
-task :debug_gem do
- require 'rubygems/specification'
- gemspec = File.read 'adhearsion.gemspec'
- spec = nil
- Thread.new { spec = eval("$SAFE = 3\n#{gemspec}") }.join
- puts "SUCCESS: Gemspec runs at the $SAFE level 3."
+task :stats do
+ system 'doc/cloc-1.55.pl . --exclude-dir=.git,vendor,coverage,doc'
end