Sha256: d06ec80d411dc8f02d4922517f538d3190d01fdbecec69861dbd23fe4693909c

Contents?: true

Size: 1.11 KB

Versions: 6

Compression:

Stored size: 1.11 KB

Contents

require "bundler/gem_tasks"
require 'rake/testtask'

desc 'Default: run unit tests.'
task :default => :test

desc 'Test the compactor gem'
Rake::TestTask.new(:test) do |t|
  t.libs << 'lib'
  t.pattern = 'test/**/*_test.rb'
  t.verbose = true
end

def run_coverage(files)
  rm_f "coverage"
  rm_f "coverage.data"

  if files.empty?
    puts "No files were specified for testing"
    return
  end

  files = files.join(" ")

  if RUBY_PLATFORM =~ /darwin/
    exclude = '--exclude "gems/*" --exclude "Library/Frameworks/*"'
  elsif RUBY_PLATFORM =~ /java/
    exclude = '--exclude "rubygems/*,jruby/*,parser*,gemspec*,_DELEGATION*,__FORWARDABLE__,erb,eval*,recognize_optimized*,yaml,yaml/*,fcntl"'
  else
    exclude = '--exclude "rubygems/*"'
  end

  rcov_bin = RUBY_PLATFORM =~ /java/ ? "jruby -S bundle exec rcov" : "bundle exec rcov"
  rcov = "#{rcov_bin} --rails -Ilib:test --sort coverage --text-report #{exclude}"
  puts
  puts
  puts "Running tests..."
  cmd = "#{rcov} #{files}"
  puts cmd
  sh cmd
end

namespace :test do
  desc "Measures test coverage"
  task :coverage do
    run_coverage Dir["test/**/*_test.rb"]
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
compactor-0.5.0 Rakefile
compactor-0.4.7 Rakefile
compactor-0.4.6 Rakefile
compactor-0.4.5 Rakefile
compactor-0.3.12 Rakefile
compactor-0.3.11 Rakefile